Rumah pembangunan bahagian belakang masalah PHP Bagaimana untuk mencetak mesej ralat PHP

Bagaimana untuk mencetak mesej ralat PHP

Apr 10, 2023 pm 02:13 PM

Memandangkan PHP digunakan semakin meluas, pembangun sering menghadapi pelbagai ralat. Pada masa ini, output mesej ralat yang betul boleh membantu kami mencari masalah dengan lebih cepat dan lebih tepat. Dalam artikel ini, kami akan memperkenalkan cara mencetak mesej ralat PHP supaya anda boleh nyahpepijat aplikasi anda dengan lebih baik.

1. Mengapa anda perlu mencetak mesej ralat PHP?

Semasa proses pembangunan, program sering menghadapi pelbagai ralat ini biasanya mengandungi beberapa maklumat penting, seperti kod ralat, nombor baris ralat, nama fail ralat, dsb. Mencetak mesej ralat ini boleh membantu kami memahami dan menjejaki masalah dengan lebih baik supaya kami dapat menyelesaikannya dengan lebih cepat.

Selain itu, output mesej ralat yang betul juga boleh membantu kami mencari isu keselamatan yang berpotensi, seperti suntikan SQL, serangan skrip merentas tapak, dsb. Jika kami boleh mengeluarkan mesej ralat dengan betul, kami boleh mengesan kelemahan keselamatan ini lebih awal dan membetulkannya tepat pada masanya.

2. Bagaimana untuk mencetak mesej ralat PHP?

Dalam PHP, kami boleh menggunakan dua kaedah berikut untuk mencetak maklumat ralat:

  1. Gunakan fungsi ini_set()

Dalam PHP, kami Anda boleh menggunakan fungsi ini_set() untuk mengubah suai item konfigurasi secara dinamik dalam fail php.ini. Dengan mengubah suai nilai item konfigurasi display_errors, kami boleh mencetak maklumat ralat PHP. Kod sampel adalah seperti berikut:

<?php
    ini_set(&#39;display_errors&#39;, &#39;On&#39;); // 开启错误信息输出
    echo $var; // 这里会出现一个未定义变量的错误
?>
Salin selepas log masuk

Kod di atas akan mengeluarkan mesej ralat pembolehubah yang tidak ditentukan, yang kandungannya adalah seperti berikut:

Notice: Undefined variable: var in /path/to/file.php on line X
Salin selepas log masuk

Di mana, Notis bermaksud mesej gesaan, Pembolehubah tidak ditentukan: var mewakili pembolehubah tidak ditentukan, /path/to/file.php mewakili fail ralat, dan baris X mewakili baris di mana ralat berlaku.

  1. Ubah suai fail php.ini

Selain menggunakan fungsi ini_set(), kami juga boleh mengubah suai terus fail php.ini untuk mencetak mesej ralat PHP . Kita boleh mencari item konfigurasi display_errors dan menetapkannya kepada Hidup. Kod sampel adalah seperti berikut:

display_errors = On
Salin selepas log masuk

Selepas mengubah suai fail php.ini, kami perlu memulakan semula perkhidmatan Apache atau PHP-FPM untuk berkuat kuasa.

3. Bagaimana untuk mengehadkan output mesej ralat PHP?

Walaupun output mesej ralat PHP sangat berguna untuk menyahpepijat aplikasi, mengeluarkan mesej ralat dalam persekitaran pengeluaran mungkin mendedahkan beberapa maklumat sensitif yang penting. Oleh itu, dalam persekitaran pengeluaran, kami boleh mengehadkan output maklumat ralat PHP dalam dua cara berikut:

  1. Tetapkan item konfigurasi display_errors kepada Mati

Kami boleh mengubah suai ia oleh Fail php.ini menetapkan item konfigurasi display_errors kepada Mati supaya PHP tidak akan mengeluarkan sebarang mesej ralat. Kaedah ini sesuai untuk melindungi persekitaran pengeluaran, tetapi tidak begitu mesra untuk aplikasi penyahpepijatan.

  1. Maklumat ralat output ke fail log

Selain menetapkan item konfigurasi display_errors kepada Mati, kami juga boleh mengeluarkan maklumat ralat PHP ke fail log . Kita boleh menggunakan fungsi error_log() untuk menulis maklumat ralat PHP pada fail log, supaya walaupun ralat berlaku, maklumat sensitif tidak akan didedahkan. Dalam persekitaran pengeluaran, ini adalah strategi yang lebih baik. Kod sampel adalah seperti berikut:

<?php
    error_reporting(E_ALL); 
    ini_set(&#39;display_errors&#39;, &#39;Off&#39;);
    ini_set(&#39;log_errors&#39;, &#39;On&#39;);
    ini_set(&#39;error_log&#39;, &#39;/path/to/error.log&#39;);

    // 这里会出现一个未定义变量的错误
    echo $var;
?>
Salin selepas log masuk

Kod di atas akan menulis maklumat ralat ke fail log yang ditentukan Kami boleh menjejaki masalah dengan melihat fail log.

4. Ringkasan

Keluaran mesej ralat yang betul ialah kunci kepada penyahpepijatan program, yang boleh membantu kami mencari masalah dengan lebih cepat dan lebih tepat. Dalam PHP, kami boleh mengeluarkan maklumat ralat melalui fungsi ini_set() dan mengubah suai fail php.ini. Pada masa yang sama, dalam persekitaran pengeluaran, kami boleh mengeluarkan maklumat ralat ke fail log untuk mengelakkan kebocoran maklumat sensitif.

Atas ialah kandungan terperinci Bagaimana untuk mencetak mesej ralat PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. Mar 25, 2025 am 10:37 AM

Kompilasi JIT Php 8 meningkatkan prestasi dengan menyusun kod yang sering dilaksanakan ke dalam kod mesin, memberi manfaat kepada aplikasi dengan pengiraan berat dan mengurangkan masa pelaksanaan.

OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. Mar 26, 2025 pm 04:13 PM

Artikel ini membincangkan kelemahan OWASP 10 dalam strategi PHP dan mitigasi. Isu -isu utama termasuk suntikan, pengesahan yang rosak, dan XSS, dengan alat yang disyorkan untuk memantau dan mendapatkan aplikasi PHP.

PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. Mar 26, 2025 pm 04:18 PM

Artikel ini membincangkan mendapatkan muat naik fail PHP untuk mengelakkan kelemahan seperti suntikan kod. Ia memberi tumpuan kepada pengesahan jenis fail, penyimpanan selamat, dan pengendalian ralat untuk meningkatkan keselamatan aplikasi.

Penyulitan PHP: Penyulitan simetri vs asimetrik. Penyulitan PHP: Penyulitan simetri vs asimetrik. Mar 25, 2025 pm 03:12 PM

Artikel ini membincangkan penyulitan simetri dan asimetrik dalam PHP, membandingkan kesesuaian, prestasi, dan perbezaan keselamatan mereka. Penyulitan simetri lebih cepat dan sesuai untuk data pukal, manakala asimetrik digunakan untuk pertukaran utama yang selamat.

Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Mar 25, 2025 pm 03:06 PM

Artikel ini membincangkan pelaksanaan pengesahan dan kebenaran yang mantap dalam PHP untuk mencegah akses yang tidak dibenarkan, memperincikan amalan terbaik dan mengesyorkan alat peningkatan keselamatan.

Bagaimana anda mengambil data dari pangkalan data menggunakan PHP? Bagaimana anda mengambil data dari pangkalan data menggunakan PHP? Mar 20, 2025 pm 04:57 PM

Artikel membincangkan mendapatkan data dari pangkalan data menggunakan PHP, meliputi langkah, langkah keselamatan, teknik pengoptimuman, dan kesilapan umum dengan penyelesaian.

PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. Mar 25, 2025 pm 03:05 PM

Artikel ini membincangkan strategi untuk mencegah serangan CSRF di PHP, termasuk menggunakan token CSRF, kuki tapak yang sama, dan pengurusan sesi yang betul.

Apakah tujuan mysqli_query () dan mysqli_fetch_assoc ()? Apakah tujuan mysqli_query () dan mysqli_fetch_assoc ()? Mar 20, 2025 pm 04:55 PM

Artikel ini membincangkan fungsi mysqli_query () dan mysqli_fetch_assoc () dalam PHP untuk interaksi pangkalan data MySQL. Ia menerangkan peranan, perbezaan, dan memberikan contoh praktikal penggunaannya. Hujah utama memberi tumpuan kepada manfaat usin

See all articles