【超初心者向けCakePHP環境設定の落とし穴1】タイムゾーンエラーに要注意!
更新日:2024.08.04塾生スタッフのAです。
文系・法学部で全くのCake PHP初心者の私がハマってしまった。環境設定の落とし穴を紹介していこうと思います。今回、私がハマった落とし穴の中で最も厄介だったのが以下の現象です。
「ローカルファイル上で、バイナリデータ(画像)がどうしても表示されない!」
キー!なんでやねん!!どう考えてもコードは間違えていないし、
何故かサーバー上にアップロードするとちゃんと画像が表示できる。。。
phpの神よ…愚かな私めにアドバイスを…と神頼み状態だったのですが、ご安心ください、
Tech Garden Schoolには、神がたくさんいらっしゃるんです。
この日も、土田先生がいらしゃっていたのでご教示願うことに。
本題に戻ります。
土田先生いわく、「タイムゾーンエラー」なるものが発生しており、どうやら、これが悪さをしている模様。
PHP Warning: date(): 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/Tokyo’ for ‘JST/9.0/no DST’ instead
※こんな感じのエラー文が出てきたら要注意!
そこで、、、
php.iniにdata.timezoneを設定したところ、、、
!無事に画像が表示!
キタ━━━(゚∀゚).━━━!!!
ということで本題に!
上記のようなタイムゾーンエラーが発生したときの対処法をご紹介します!
作業は以下の通り簡単!
1)MAMPでPHPのバージョンを調べる
まず、MAMPを起動して環境設定(Preferences)を選択。
PHPを選択。すると、PHPのバージョンが表示される。例の画像だと「5.6.8」。
2)アプリケーション─>MAMP─>conf─>php.X.X.X─>php.ini を探し、コピーバックアップする
何か悪いことが起きるといけないので、一応編集する前にバックアップを取っておきましょう。
3)php.iniをエディタで開く
4)timezone で検索し、timezoneを設定する。
「;data.timezone =」となっている箇所に
「data.timezone = Asia/Tokyo」と入力するだけ!
重要!:行頭のセミコロンをはずすのを忘れずに!!
”Asia/Tokyo” ではなく、Asia/Tokyo と記入すること!!
いかがでしたでしょうか。
このように、自分では逆立ちしても解決できない問題でも、
TechGardenSchoolでなら大変素晴らしい講師の方々が速攻で解決してくださいます。
phpの勉強、独学で進めるとストレスで髪の毛が3万本くらい雲散霧消すると思うので、
ハゲ散らかってしまう前にぜひTech Garden Schoolの無料見学会にお越しください。
塾生スタッフ A