Drupal 7

REQUEST_TIME という定数が Drupal のソースコードに結構みつかる。これが何をやっているのか知らなかったので調べてみた。

定義しているのは である。$_SERVER['REQUEST_TIME'] をそのまま設定している。

$_SERVER['REQUEST_TIME'] だが、 php のマニュアル には以下のように説明してある

リクエストの開始時のタイムスタンプ。PHP 5.1.0 以降で利用可能。

サーバがリクエストを受け取った時間のようだ。 これを使うことにより、 time() 関数を使わずに現在時間 ( UNIX 時間 ) を取得することが出来る。

たとえば、node モジュールの node.module ファイルの node_save() 関数をみてみると:

    // Set the timestamp fields.
    if (empty($node->created)) {
      $node->created = REQUEST_TIME;
    // The changed timestamp is always updated for bookkeeping purposes,
    // for example: revisions, searching, etc.
    $node->changed = REQUEST_TIME;

    $node->timestamp = REQUEST_TIME;

このようにして REQUEST_TIME 定数を用いて、node の作成時間(更新時は設定されているので変更しない)、node の更新時間等を設定している。


私もこれからは REQUEST_TIME 定数を利用するようにしよう。


Add new comment

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
1 + 4 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.