Rumah > pembangunan bahagian belakang > tutorial php > Kemahiran pengendalian dan penyahpepijatan PHP

Kemahiran pengendalian dan penyahpepijatan PHP

王林
Lepaskan: 2024-05-03 18:21:01
asal
687 orang telah melayarinya

Kemahiran pengendalian dan penyahpepijatan ralat PHP termasuk: Jenis ralat: E_ERROR, E_WARNING, E_NOTICE Fungsi pengendalian ralat: register_shutdown_function(), set_error_handler(), error_get_last() Fungsi pengendalian ralat tersuai: digunakan untuk merekod atau mengendalikan ralat dan menghalang program daripada menamatkan ralat Petua penyahpepijatan: Semak log, gunakan pengendalian pengecualian, dayakan PHP untuk memaparkan ralat, gunakan penyahpepijat dalam talian

PHP 错误处理与调试技巧

Petua Pengendalian dan Penyahpepijatan PHP

Pengendalian ralat dalam PHP adalah penting untuk membangunkan aplikasi yang mantap dan boleh dipercayai. Berikut ialah beberapa petua untuk membantu anda mengendalikan dan menyahpepijat ralat PHP dengan berkesan:

Jenis Ralat

Ralat PHP terbahagi kepada jenis berikut:

  • E_ERROR: Ralat yang serius dan program tidak dapat meneruskan pelaksanaan.
  • E_WARNING: Ralat bukan kritikal, tetapi boleh membawa kepada tingkah laku yang tidak dijangka.
  • E_NOTICE: Ralat tidak kritikal, biasanya menunjukkan penggunaan PHP yang tidak betul.

Fungsi pengendalian ralat

PHP menyediakan fungsi pengendalian ralat berikut:

  • register_shutdown_function(): Dipanggil pada penghujung pelaksanaan skrip untuk melaporkan ralat yang membawa maut.
  • set_error_handler(): Tetapkan fungsi tersuai untuk mengendalikan ralat.
  • error_get_last(): Dapatkan maklumat ralat terkini.

Contoh Fungsi Pengendalian Ralat

Berikut ialah contoh fungsi pengendalian ralat yang mencatat ralat maut ke fail log:

function error_handler(int $errno, string $errstr, string $errfile, int $errline)
{
    $message = sprintf("Error (%d): %s in %s on line %d", $errno, $errstr, $errfile, $errline);
    file_put_contents('error_log.txt', $message);
}
Salin selepas log masuk

Menggunakan Fungsi Pengendalian Ralat Tersuai

, Sila gunakan fungsi pengendalian ralat tersuai panggil

pada permulaan skrip anda: set_error_handler()

set_error_handler('error_handler');
Salin selepas log masuk

Petua Penyahpepijatan Ralat

Berikut ialah beberapa petua untuk membantu anda menyahpepijat ralat PHP:

    Semak log pelayan.
  • Gunakan pengendalian pengecualian.
  • Dayakan PHP untuk menunjukkan ralat.
  • Gunakan penyahpepijat dalam talian.

Contoh Praktikal

Andaikan anda mempunyai skrip PHP yang cuba membaca fail yang tidak wujud. Ralat ini mengakibatkan ralat maut.

$file = "/path/to/non-existent-file.txt";
$contents = file_get_contents($file);
Salin selepas log masuk

Untuk mengendalikan ralat ini, anda boleh menggunakan fungsi pengendalian ralat tersuai:

function error_handler(int $errno, string $errstr, string $errfile, int $errline)
{
    if ($errno === E_ERROR) {
        // 记录错误
    }
}

set_error_handler('error_handler');
Salin selepas log masuk
Dengan cara ini, apabila skrip cuba membaca fail yang tidak wujud, ralat akan dilog dan atur cara akan meneruskan pelaksanaan.

Atas ialah kandungan terperinci Kemahiran pengendalian dan penyahpepijatan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan