PHPでエラーが表示されずに困ることがある。最近のPHPは標準がエラー非表示になってる場合があり、ちょっと戸惑うことがある。
php エラーはdisplay_erros とerror_reportingで決まる
php.ini
display_errors = On ;エラーをブラウザに出す・出さない error_reporting = E_ALL ;無視するエラーを決める.
で表示出来る。
これらはプログラム中で一時的にOnにできる。
うまくいかないとき、まず設定を確認する
<?php phpinfo(); #画面でdisplay_errosの設定を確認する #また現在読み込まれているphp.iniのファイル場所を確認する
php.iniが使えない場合.htaccessを使う
.htaccess を使う
php_flag で display_errors をオンにしておけばOK
php_flag display_errors on
Windowsのインストーラー版の場合
インストーラーでPHPを入れた場合、php.iniの場所が複数になるので注意
C:\Program file\php\php.ini C:\Users\ユーザー名\AppData\Local\VirtualStore\Program Files\php\php.ini
の2種類が作られる。インストーラーはProgram Filesの下に作ったつもりでも、実際にはVirtualStoreに作られていたりする。Windows版のphp でphp.iniが反映されない場合はバーチャルストアを疑ってみてもイイ。*1
*1:実際私はコレにはまった