web-dev-qa-db-ja.com

PHPのdate()からの警告を修正する方法」

WinxpでXAMPP(PHPバージョン5.3.1)を使用しています。ローカルホストでtime()またはdate()関数を呼び出そうとすると。このように警告メッセージが表示されますが、

重大度:警告

メッセージ:date()[function.date]:システムのタイムゾーン設定に依存することは安全ではありません。 date.timezone設定またはdate_default_timezone_set()関数を使用するには、必須です。これらの方法のいずれかを使用してもこの警告が引き続き表示される場合は、タイムゾーン識別子のつづりを間違えている可能性があります。代わりに「8.0/no DST」に「UTC」を選択しました

ファイル名:helpers/date_helper.php

警告を無効にするにはどうすればよいですか?ありがとう。

33
Nano HE

_date.timezone_ファイルに_php.ini_を設定してみてください。または、ini_set()またはdate_default_timezone_set()を使用して手動で設定できます。

59
Alex Pliutau

次のようにデフォルトのタイムゾーンsmthを設定する必要があります。

date_default_timezone_set('Europe/Bucharest');

これについての詳細は http://php.net/manual/en/function.date-default-timezone-set.php

または、日付の前に@を使用して警告を抑制することもできますが、警告はサーバーのデフォルトのタイムゾーンに依存することは安全ではないことを示しているためです

19
Poelinca Dorin

これも使用できます:

_ini_alter('date.timezone','Asia/Calcutta');
_

日付関数を呼び出す前にこれを呼び出す必要があります。実行時にPHP設定を変更する最初のパラメーターとしてキーを受け入れ、2番目のパラメーターは値です。

これを理解する前に、私はこれらのことをしていました。

  1. PHP.timezoneを「Asia/Calcutta」に変更しました-しかし動作しませんでした
  2. Iniのlatおよびlongパラメータを変更しました-動作しませんでした
  3. 使用済みdate_default_timezone_set("Asia/Calcutta");-動作しませんでした
  4. 使用済みini_alter()-IT WORKED
  5. コメントdate_default_timezone_set("Asia/Calcutta");-IT WORKED
  6. PHP.iniに加えられた変更を元に戻しました-IT WORKED

私にとっては、init_alter()メソッドですべて機能しました。

Apache 2(プリインストール済み)を実行しています。OSXMountain LionでPHP 5.3

10
Sumeet Basak

これは、php.iniでdate.timezoneが設定されていないためであるためです!

; date.timezone = Europe/Berlin

Phpdate()関数を使用すると、その警告がトリガーされました。

3
cottton
error_reporting(E_ALL ^ E_WARNING);

:)

「PHPでdate()からの警告を修正する方法」に応じて変更する必要があります...

0