Saat ini saya menjalankan situs di php 5.4, sebelum ini saya menjalankan situs saya di 5.3.8. Sayangnya, php 5.4 menggabungkan E_ALL
dan E_STRICT
, yang berarti pengaturan saya sebelumnya untuk error_reporting
tidak berfungsi sekarang. Nilai saya sebelumnya adalah E_ALL & ~E_NOTICE & ~E_STRICT
Haruskah saya mengaktifkan nilai satu per satu?
Saya memiliki terlalu banyak kesalahan dan file berisi terlalu banyak kode untuk saya perbaiki.
php
error-handling
icomrade.dll
sumber
sumber
Jawaban:
Seperti yang dinyatakan oleh pemberi komentar, opsi terbaik adalah memperbaiki kesalahan, tetapi dengan waktu atau pengetahuan yang terbatas, itu tidak selalu memungkinkan. Dalam perubahan php.ini Anda
untuk
Jika Anda tidak memiliki akses ke php.ini, Anda dapat memasukkan ini ke dalam file .htaccess Anda:
Ini adalah nilai E_ALL (32767) dan menghapus nilai E_STRICT (2048) dan E_NOTICE (8).
Jika Anda tidak memiliki akses ke file .htaccess atau tidak diaktifkan, Anda mungkin perlu meletakkan ini di bagian atas bagian PHP dari skrip apa pun yang dimuat dari panggilan browser:
Salah satunya akan membantu Anda dapat menggunakan perangkat lunak. Pemberitahuan dan hal-hal yang ketat adalah indikator masalah atau potensi masalah dan Anda mungkin menemukan beberapa kode tidak berfungsi dengan benar di PHP 5.4.
sumber
.htaccess php_value hanya berfungsi jika Anda menggunakan PHP Server API sebagai modul Apache server Web. Gunakan sintaks IfModule:
Jika Anda menggunakan PHP Server API CGI / FastCGI gunakan
atau
dalam kode PHP Anda, atau file konfigurasi PHP .user.ini | modifikasi php.ini:
di host virtual Anda, tingkat server.
sumber
Ini berhasil untuk saya, ketika saya menetapkan error_reporting di dua tempat pada waktu yang sama
di suatu tempat dalam kode PHP
dan dalam file .htaccess
sumber
Jika Anda juga perlu menonaktifkan E_DEPRACATED, gunakan:
Dalam kasus saya, CMS Made Simple mengeluh "E_STRICT diaktifkan di error_reporting" serta "E_DEPRECATED is enabled". Menambahkan satu baris itu ke .htaccess memecahkan kedua kesalahan konfigurasi.
sumber
Perhatian, Anda mungkin perlu me-restart LAMP, Apache atau apa pun yang Anda gunakan untuk membuatnya terpengaruh. Memeras otak kita untuk sementara waktu tentang yang satu ini, sepertinya tidak berpengaruh sampai layanan dimulai ulang, mungkin karena situs web sedang dalam cache.
sumber