4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

PHPでdate.timezoneを設定したのに反映されない時の対処法メモ(Macユーザー向け)

Last updated at Posted at 2017-09-16

事象

タイトルの通りです。

環境

  • MacBook Pro (Retina, 13-inch, Mid 2014)
    • MacOS Sierra 10.12
    • PHP 5.5.38
    • Apache 2.4.23

対処法

1. ターミナルでPHPの設定ファイル(php.ini)のパスを確認

ターミナル
$ php --ini
Configuration File (php.ini) Path: /usr/local/etc/php/5.5
Loaded Configuration File:         /usr/local/etc/php/5.5/php.ini <--ココ
Scan for additional .ini files in: /usr/local/etc/php/5.5/conf.d
Additional .ini files parsed:      /usr/local/etc/php/5.5/conf.d/ext-gmp.ini,
/usr/local/etc/php/5.5/conf.d/ext-pdo_pgsql.ini,
/usr/local/etc/php/5.5/conf.d/ext-xdebug.ini

2. php.iniでタイムゾーンを設定

ターミナル
$ vim /usr/local/etc/php/5.5/php.ini

...
 907 [Date]
 908 ; Defines the default timezone used by the date functions
 909 ; http://php.net/date.timezone
 910 ;date.timezone =
 911 date.timezone = "Asia/Tokyo" <--ココ("付けても付けなくてもOK)
...

3. 2で設定したタイムゾーンが反映しているか確認

ターミナル
$ php -i

...
date

date/time support => enabled
"Olson" Timezone Database Version => 2015.5
Timezone Database => internal
Default timezone => UTC
...
phpinfo()で確認する場合は以下記述してブラウザにてアクセス
<?php

phpinfo();

?>
dateのところ.png

あれ?なんかWarning出てるし、Default timezoneが「UTC」のままだ。
何故だ?...

4. そもそもphp.iniファイルが正しく読み込まれているか確認

ターミナル
$ php -i

...
Loaded Configuration File => (none)
...
configんとこ.png

あちゃー、(none)ってなってるし。そもそもあかんやん。

5. Apacheの設定ファイル(httpd.conf)でphp.iniのパスを指定してあげる

まずはhttpd.confファイルのパスを確認

ターミナル
$ apachectl -V

...
 -D SERVER_CONFIG_FILE="/private/etc/apache2/httpd.conf"

httpd.confファイルを編集、行末あたりに以下php.iniのパス指定を追記。
そしてApache再起動。

ターミナル
$ vim private/etc/apache2/httpd.conf

...
537 <IfModule php5_module>
538 PHPINIDir /usr/local/etc/php/5.5/
539 </IfModule>
...

$ sudo apachectl restart

6. 最終確認

再度phpinfoを確認してみると...

1.png

よしよし。そして肝心のtimezoneはというと...

2.png

よっしゃー。php.iniのtimezone設定が有効になったー。

以上、解決

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

参考文献

「PHPINIDir」でphp.iniのパスを指定
※こちらの記事のPHP7用の設定をPHP5用に焼き直しました。ありがとうございましたm(_ _)m

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?