Saya menjalankan ubuntu 10.04 + nginx + php-fpm 5.4
Jika saya tetapkan ini dalam php.ini display_errors = On
semua ralat akan dicetak. Jika sebaliknya saya mematikannya dan kemudian menggunakan ini_set('display_errors, '1'); ia juga dipaparkan secara langsung, tetapi bukan ralat penghuraian, hanya halaman kosong. Saya juga cuba menggunakan error_reporting dan E_STRICT tetapi saya tidak dapat mencari jalan!
Beberapa tahun selepas soalan ini dijawab, inilah saya, tetapi saya telah menemui penyelesaian untuk masalah ini.
Untuk skrip yang saya tulis, saya mencipta skrip kedua yang mengandungi arahan ini_set() diikuti dengan skrip yang sayasebenarnya kerjakan.
Berikut ialah test_run.phpJika anda mendayakannya selepas
php.ini
中禁用display_errors
,然后使用ini_set()
在 PHP 脚本中启用它,它仅在执行包含ini_set()
talian panggilan .Ralat penghuraian berlaku sebelum skrip PHP dimulakan - semasa menghuraikan fail PHP (oleh itu dinamakan "ralat parse") .
Ini bermakna ia berlaku apabila ralat
ini_set()
甚至有机会被执行之前 - 这意味着,在您的情况下,当解析时display_errors
anda tidak didayakan; oleh itu, anda tidak akan memaparkan apa-apa.