PHPデフォルトタイムゾーンが正しく機能しない時の対処法3選

みなさまこんにちは。

私のサイト上で新たな問題が発生しました。
↓これです。

どうやらこのPHPデフォルトタイムゾーンが乱れてしまっていることにより、サイトヘルスに”致命的な問題”があるようです。

大至急原因を突き止めて改善していきます。

もし、同じような問題に直面してしまった時は、この解決法が参考になれば嬉しいです。

目次
PHPタイムゾーンとは
原因
対処法①タイムゾーンの設定を確認
対処法②タイムゾーンを変更する
対処法③原因となっているであろうプラグインの無効化

PHPタイムゾーンとは?

タイムゾーンは文字通り、同じ標準時刻を使用する地域や区分のことなのですが、

PHPタイムゾーンでは様々な地域のタイムゾーンがサポートされているので、PHP設定ファイルからタイムゾーンの指定ができます。

設定方法は2パターンあり、

php.iniで設定する方法とdate_default_timezone_set関数を用いて設定する方法があり、

php.iniは動作環境を詳細に設定できるメリットがあり…と調べたらプログラム初心者には
難しいことが沢山書いてありましたが、私のサイトヘルス上では、関数呼び出しによる問題が起こっているとのことで、

PHPタイムゾーンをdate_default_timezone_set関数を使って設定環境の見直しと改善を図っていきます。


原因

大きな原因は、導入したプラグインがPCが日本の標準タイムゾーンから外れていることで私が指定したタイムゾーンと実際に住んでいる国のタイムゾーンとが干渉してしまい、

関数がうまく機能していないトラブルが発生していました。

早速解決法を探っていきましょう。

対処法①タイムゾーンの設定を確認

まずは、いつものようにサイトの管理画面(ダッシュボード)に行き、設定→一般設定をクリックし、タイムゾーン設定を確認します。

ここが、日付がドイツ式のdd/mm/yyyyになっていたので、yyyy-mm-ddに直しました。

変更を保存後メニューバーのツール→サイトヘルスに行き、ページをリロードしました。

が、ステータスは変わっていません。

次の手を考えます。

対処法②タイムゾーンを変更する

次に、タイムゾーンを変更するためにもう一度サイトの管理画面(ダッシュボード)に行き、設定→一般設定をクリックし、タイムゾーン設定を確認します。

現在の設定を東京からUTC表記に変えます。

日本の標準時間はUTC+9なので、UTC+9に変えました。

そして、サイトヘルスをリロードしましたが、まだ改善されず。

次を試します。

※後の調べで、UTC+9のままにしておくと、特に夏時間で予期しない動作が発生する場合がありますという表示が出てくる事もあるとのことなので、
この方法で、改善しなかった方は、設定を都市名に直してください。



対処法③原因となっているであろうプラグインの無効化

振り出しに戻って、いつも問題が起こる度にしている事をまた今回もやってみます。

それは、直近でインストールしたプラグインの無効化です。

せっかく必要だからこのプラグインをインストールしたのですが、このプラグインはこういったエラーが多発しているとのことで、一度無効化してみることにしました。

すると、サイトヘルスの致命的な問題というところからタイムゾーンエラーの表記が消え、問題は解決しました。

プログラミングは難解です。

でも毎日気づきと勉強で、ずっと使っていなかった脳が元気になっているような気がします。

ではまたっ!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です