5

MAMP で Symfony2 フレームワークを構成しようとしています。

ただし、 php.iniI have correct setdate.timezoneでは、MAMP が何らかの方法で設定をオーバーライドし、代わりにシステム時間を使用しているようです。

その結果、Symphony のconfig.phpページは次の警告を送信します。

警告: date_default_timezone_get() [function.date-default-timezone-get]: システムのタイムゾーン設定に頼るのは安全ではありません。date.timezone 設定または date_default_timezone_set() 関数を使用する必要があります。これらの方法のいずれかを使用してもこの警告が表示される場合は、タイムゾーン識別子のスペルが間違っている可能性があります。/Applications/MAMP/htdocs/Symfony/app/SymfonyRequirements.php の 434 行目で、「EST/-5.0/no DST」の代わりに「America/New_York」を選択しました。

これが修正されるまで、Symfony は開始ページを表示できません。解決策は何ですか?

ありがとうございました!

4

7 に答える 7

2

システムに 2 つのphp.iniファイルがあるかどうかを確認します。それらの1つに行を追加している可能性がdate.timezoneありますが、MAMPはもう1つを使用しています。

web/app.phpそれでもうまくいかない場合は、ファイルの先頭に次の行を追加してみてくださいweb/app_dev.php(エラー メッセージが示すように)。

date_default_timezone_get('Europe/London');

それが役に立てば幸い。

于 2012-11-28T03:07:38.910 に答える
2

MAMP が php.ini の date.timezone 設定をオーバーライドする理由と方法を解明する作業を続けていますが、Symfony の php ファイル内にクイック フィックス ソリューションを見つけ、少なくとも今のところは問題を解決しました。

次のコードを追加しました。

date_default_timezone_set ('America/New_York');

-- Symfony の config.php および app_dev.php ファイルの先頭、開始 php タグの直後、スクリプトの最上部。これにより、警告メッセージが削除され、Symfony が MAMP で動作するようになりました。

ハッキングを続けているため、Symfony 内の他のいくつかの php ファイルに同じコードを追加する必要があると予測していますが、これは問題にはなりません。または、MAMP のオーバーライドをオーバーライドする方法を理解するかもしれません。

それでも、これは実行可能なソリューションです。

于 2012-12-10T21:32:53.500 に答える
1
  • コピー

cp /etc/php.ini.default /etc/php.ini

  • 権限を変更する

chmod -R 775 /etc/php.ini

  • 編集

sudo vi /etc/php.ini

  • 検索して次のdate.timezoneように変更します (例):

date.timezone = "Europe/London"

于 2015-02-04T23:07:22.837 に答える
0

問題が MAMP PRO の php.ini ファイルの変更方法である場合は、テンプレートを編集してみてください。

ファイル -> テンプレートの編集

MAMPマニュアルの24ページで見ることができます

詳細はこちら

于 2014-09-26T16:36:32.880 に答える
0

MAMP 3.0.1 では、使用している対応する php フォルダー バージョンの php.ini ファイルには、セミコロンの後に宣言された値 date.timezone があり、コマンドではなくコメントになります。C:\MAMP\conf\php5.5.12 (またはお使いの php バージョン) の php.ini で、703 行目のセミコロンを削除し、ガイドラインhttp://php.net/manual/en/timezonesに従って現地時間を定義します。 php

これがうまくいくことを願っています:)

于 2014-10-15T11:47:38.780 に答える