1

I got the following error/warning while tring to install Kohana/SilverStripe.
What does it mean and What do I do for it?

Warning:
date_default_timezone_get():
It is not safe to rely on the system's timezone settings.
You are *required* to use the date.timezone setting or the date_default_timezone_set() function.
In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier.
We selected 'Asia/Calcutta' for '5.5/no DST' instead in C:\Server\apache\htdocs\kohana\system\core\Kohana.php on line 136

Thanks in Advance!

4

3 に答える 3

6

これはエラーではなく警告であるため、アプリの動作を妨げることはありません。

136行目のC:\ Server \ apache \ htdocs \ kohana \ system \ core \ Kohana.phpでdate_default_timezone_set()を使用して、適切なタイムゾーンを明示的に設定します

有効なタイムゾーンから選択する必要があります


編集

警告メッセージ自体に記載されているように、実際にはサードパーティのソフトウェアファイルを編集するよりもクリーンな選択肢があります。つまり、PHPを適切に構成します。

  • の値を編集してphp.ini調整しますdate.timezone = America/New_York

また

  • php_valueWebサーバー構成でディレクティブを使用して、 vhost構成に設定するか.htaccessphp_value date.timezone America/New_York
于 2009-09-18T12:26:52.177 に答える
4

上記の彼自身の質問に対する OP のコメントは、デフォルトのタイムゾーンを php.ini で設定できないことを意味しますが、これは正しくありません。実際、多くの場合、そこに設定することが推奨されます。そして、この SO の回答は、「php のデフォルトのタイムゾーン エラー」に対する Google での最初のヒットの 1 つであるため、他の人の正気を失わないようにします。

このエラーの非常に一般的な原因は、使用されている php.ini ファイルでゾーンの都市または国 (たとえば、"New York"、"Los Angeles") のスペルを間違えることではなく、アンダースコアではなく埋め込みスペースを含めることです。識別子、したがって完全な定数の「スペルミス」。

これは、実行時にすべてのページに設定する必要なく、必要なことも実行します (Windows、Linux、および OSX の PHP 5.4 および 5.3 で検証済み)。

php.iniで:

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = America/New_York
;               ^^^^^^^^^^^^^^^^  * Must_Use_Underscores *


また、スペルを確認して再確認し、それが正しいと確信している場合は、使用されている実際の php.ini ファイルを編集していることを確認しください

Web コンテキスト (テスト ファイルtest.phpを作成し、そこで確認しdate.timezoneます):

<?php phpinfo(); ?>

コマンドライン Linux/OSX:

$ php -i | grep "タイムゾーン"

コマンド ライン Windows:

C:\> php -i | 「タイムゾーン」を見つける


デフォルトの日付タイムゾーン設定を取得する優先順位については、こちらで詳しく説明しています。

于 2012-06-24T20:57:46.770 に答える
1

を変更できない場合は、これをまたはファイルphp.iniに追加します。_ss_environment.phpmysite/_config.php

date_default_timezone_set('...');

...、有効な PHP タイムゾーンの 1 つです。

于 2016-03-08T20:23:42.810 に答える