PHP에서 date.timezone을 설정했는데 반영되지 않을 때의 조치 메모 (Mac 사용자 용)
사건
제목대로입니다.
환경
대처법
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();
?>

어라? 왠지 Warning 나오고 있고, Default timezone이 「UTC」인 채.
왜? ...
4. 원래 php.ini 파일이 올바르게 로드되었는지 확인
터미널
$ php -i
...
Loaded Configuration File => (none)
...

아, (none)라고 되어 있고. 원래 아칸 얀.
5. Apache의 설정 파일(httpd.conf)에서 php.ini의 경로를 지정해 준다
우선 httpd.conf 파일의 경로를 확인
터미널
$ apachectl -V
...
-D SERVER_CONFIG_FILE="/private/etc/apache2/httpd.conf"
httpd.conf 파일을 편집, 줄 끝 당 아래 php.ini의 경로 지정을 추가.
그리고 아파치 재부팅.
터미널
$ 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를 확인해 보면 ...

좋아요. 그리고 중요한 timezone은 ...

좋아요. php.ini의 timezone 설정이 활성화되었습니다.
이상, 해결
고마워요.
참고문헌
PHPINIDir에서 php.ini의 경로 지정
※이쪽의 기사의 PHP7용의 설정을 PHP5용으로 재구성했습니다. 고마워요 m (_ _) m
Reference
이 문제에 관하여(PHP에서 date.timezone을 설정했는데 반영되지 않을 때의 조치 메모 (Mac 사용자 용)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/okame_qiita/items/93ed3e62f2d04fe1431a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)