Ralat PHP
Pengenalan kepada Ralat dan Pengelogan PHP
Fungsi Ralat dan Pengelogan membolehkan anda mengendalikan dan mengelog ralat. Fungsi
Ralat membolehkan pengguna mentakrifkan peraturan pengendalian ralat dan mengubah suai cara ralat direkod.
Fungsi Pengelogan membolehkan pengguna log aplikasi dan menghantar mesej log ke e-mel, log sistem atau mesin lain.
Konfigurasi pelaksanaan
Fungsi ralat dipengaruhi oleh fail konfigurasi php.ini.
Pilihan konfigurasi ralat dan log:
Parameter | Nilai lalai | Penerangan | Julat boleh ubah suai |
---|---|---|---|
pelaporan_ralat <🎜 🎜> | NULLTetapkan tahap ralat PHP dan kembalikan tahap semasa (nombor atau pemalar). | PHP_INI_ALL | |
"1" | Pilihan ini menetapkan sama ada mesej ralat dipaparkan pada skrin sebagai sebahagian daripada output, atau tersembunyi daripada pengguna. | Nota: Jangan gunakan ciri ini dalam persekitaran pengeluaran (digunakan semasa pembangunan dan ujian) | PHP_INI_ALL|
"0" | Walaupun display_errors ditetapkan kepada hidup, mesej ralat semasa permulaan PHP tidak akan dipaparkan. Adalah amat disyorkan untuk mematikan display_startup_errors kecuali untuk tujuan penyahpepijatan. | PHP_INI_ALL | |
"0" | Tetapkan sama ada untuk merekodkan maklumat ralat skrip yang berjalan ke log ralat pelayan atau error_log antara. Ambil perhatian bahawa ini ialah item konfigurasi khusus pelayan. | PHP_INI_ALL | |
"1024" | Tetapkan bilangan maksimum bait log_errors. Sumber ralat akan ditambahkan kepada maklumat log_ralat. Nilai lalai ialah 1024. Jika ditetapkan kepada 0, tiada had untuk panjang. Tetapan panjang ini mengehadkan ralat log, ralat yang dipaparkan dan $php_errormsg. | PHP_INI_ALL | |
"0" | Jangan log maklumat berulang. Ralat berulang mesti berlaku pada baris kod yang sama dalam fail yang sama, melainkan ignore_repeated_source ditetapkan kepada benar. | PHP_INI_ALL | |
"0" | Apabila mengabaikan mesej berulang, sumber mesej juga diabaikan. Apabila tetapan ini dihidupkan, mesej pendua tidak akan merekodkan sama ada ia dijana oleh fail yang berbeza atau baris kod sumber yang berbeza. | PHP_INI_ALL | |
"1" | Jika parameter ini ditetapkan kepada Mati, maklumat kebocoran memori tidak akan dipaparkan (dalam stdout atau log). | PHP_INI_ALL | |
"0" | Jika didayakan, ralat terakhir akan sentiasa wujud dalam pembolehubah $php_errormsg . | PHP_INI_ALL | |
"1" | Tutup teg HTML dalam mesej ralat. | PHP_INI_ALL | PHP_INI_SYSTEM dalam PHP <= 4.2.3. |
"0" | <🎜 secara normal laporan ralat dan format ralat kepada format mesej ralat XML-RPC. | PHP_INI_SYSTEM | |
"0" | digunakan sebagai nilai elemen XML-RPC faultCode. | PHP_INI_ALL | |
"" | Format mesej ralat baharu mengandungi halaman rujukan yang sepadan, iaitu halaman rujukan untuk ralat Sediakan penerangan khusus, atau huraikan fungsi yang menyebabkan ralat. | Untuk menyediakan halaman manual, anda boleh memuat turun manual bahasa yang sepadan dari tapak rasmi PHP dan menetapkan URL dalam ini ke alamat setempat yang sepadan.PHP_INI_ALL | |
docref_ext | "" | Lihat docref_root. | PHP_INI_> | PHP_INI_ALL
error_prepend_string | NULL | Output kandungan sebelum mesej ralat. | PHP_INI_ALL |
error_append_string | NULL | Output kandungan selepas mesej ralat. | PHP_INI_ALL |
error_log | NULL | Menetapkan fail ke mana ralat skrip akan dilog. Fail mesti boleh ditulis oleh pengguna pelayan web. | PHP_INI_ALL |
Pemasangan
Fungsi Ralat dan Pengelogan adalah sebahagian daripada teras PHP. Tiada pemasangan diperlukan untuk menggunakan fungsi ini.
Fungsi Ralat PHP dan Pengelogan
PHP: Menunjukkan versi PHP terawal yang menyokong fungsi ini.
Fungsi | Penerangan | PHP |
---|
函数 | 描述 | PHP |
---|---|---|
debug_backtrace() | 生成 backtrace。 | 4 |
debug_print_backtrace() | 打印 backtrace。 | 5 |
error_get_last() | 获得最后发生的错误。 | 5 |
error_log() | 向服务器错误记录、文件或远程目标发送一个错误。 | 4 |
error_reporting() | 规定报告哪个错误。 | 4 |
restore_error_handler() | 恢复之前的错误处理程序。 | 4 |
restore_exception_handler() | 恢复之前的异常处理程序。 | 5 |
set_error_handler() | 设置用户自定义的错误处理函数。 | 4 |
set_exception_handler() | 设置用户自定义的异常处理函数。 | 5 |
trigger_error() | 创建用户自定义的错误消息。 | 4 |
user_error() | trigger_error() 的别名。 | 4 |
Ralat PHP dan Pemalar Log
PHP: Menunjukkan versi PHP terawal yang menyokong pemalar ini.
nilai | Malar | Penerangan | PHP | < /tr>||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | E_ERROR | Ralat masa jalan yang membawa maut. Ralat yang tidak boleh diperbaiki. Berhenti melaksanakan skrip. |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 | E_WARNING | Ralat bukan maut pada masa jalan. Pelaksanaan skrip tidak dihentikan. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 | E_PARSE | Ralat penghuraian semasa penyusunan. Ralat penghuraian hanya boleh dihasilkan oleh penghurai. | <🎜> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8 | E_NOTICE | Pemberitahuan masa jalan. Penemuan skrip boleh menjadi pepijat, tetapi juga boleh berlaku apabila menjalankan skrip secara normal. | <🎜> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
16 | E_CORE_ERROR | Ralat maut semasa memulakan PHP. Ini sama seperti E_ERROR teras PHP. | 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
32 | E_CORE_WARNING | Ralat bukan maut semasa memulakan PHP. Ini sama seperti E_WARNING teras PHP. | 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
64 | E_COMPILE_ERROR | Ralat maut semasa penyusunan. Ini sama seperti E_ERROR yang dihasilkan oleh enjin skrip Zend. | 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
128 | E_COMPILE_WARNING | Ralat bukan maut semasa penyusunan. Ini seperti E_WARNING yang dihasilkan oleh enjin skrip Zend. | 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
256 | E_USER_ERROR | Ralat maut yang dijana pengguna. Ini seperti E_ERROR yang dihasilkan oleh pengaturcara menggunakan fungsi PHP trigger_error(). | 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
512 | E_USER_WARNING | Ralat bukan maut yang dijana pengguna. Ini seperti E_WARNING yang dihasilkan oleh pengaturcara menggunakan fungsi PHP trigger_error(). | 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1024 | E_USER_NOTICE | Pemberitahuan yang dijana pengguna. Ini seperti E_NOTICE yang dihasilkan oleh pengaturcara menggunakan fungsi PHP trigger_error(). | 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2048 | E_STRICT | Pemberitahuan masa jalan. PHP mengesyorkan anda membuat perubahan pada kod anda untuk meningkatkan kesalingoperasian dan keserasian kod. | 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4096 | E_RECOVERABLE_ERROR | Ralat maut yang boleh ditangkap. Ini seperti E_ERROR yang boleh ditangkap oleh pemegang yang ditentukan pengguna (lihat set_error_handler()). | 5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
6143 | E_ALL | Semua peringkat ralat dan amaran kecuali E_STRICT (sejak Bermula dari PHP 6.0, E_STRICT akan menjadi sebahagian daripada E_ALL). | 5 |