Rumah > pembangunan bahagian belakang > tutorial php > Jenis Ralat dalam PHP

Jenis Ralat dalam PHP

WBOY
Lepaskan: 2024-08-29 12:57:05
asal
563 orang telah melayarinya

Peristiwa berlakunya sisihan keputusan daripada keputusan yang tepat diistilahkan sebagai Ralat. Dalam PHP, ralat boleh dijana kerana penggunaan format pengekodan yang salah atau pelaksanaan fungsi yang tidak boleh dilaksanakan. Berdasarkan punca dan tahap keterukan, ralat dalam PHP dikategorikan dalam 4 jenis, seperti:

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

  1. Ralat sintaks (Ralat hurai)
  2. Ralat Amaran
  3. Ralat perasan
  4. Ralat maut

Jenis Ralat dalam PHP

Mari bincangkan Jenis Ralat dalam PHP.

Jenis Ralat dalam PHP

1. Ralat Sintaks (Ralat Parse)

Dalam PHP, skrip perlu mengikut tatabahasa standard untuk membangunkan kod boleh laku. Apabila sintaks kod bertulis terpesong daripada standard, ralat sintaks berlaku. Ia juga dipanggil sebagai ralat parse. Ralat ini akan disemak dalam peringkat penyusunan itu sendiri dan pelaksanaan kod akan dihentikan. Ia tidak membenarkan pelaksanaan melainkan ralat tidak diperbaiki dan kompilasi selesai tanpa sebarang kecacatan sintaks. Pemalar ralat yang digunakan untuk mewakili ralat penghuraian masa (sintaks) penyusunan: E_PARSE

Contoh:

Coretan kod di bawah dibangunkan untuk memberikan nilai kepada pembolehubah PHP dan memaparkan nilai simpanan pada tetingkap output.

<?php
$Correct_Var = "Writing a code to demonstrate Syntax(Parse Error)";
Incorrect_Var = "The '$' symbol is missing for variable y!!!";
echo $Correct_Var;
echo Incorrect_Var;
?>
Salin selepas log masuk

Output:

Pengkompil PHP memahami kewujudan sebarang pembolehubah apabila rentetan dikaitkan dengan simbol $. Dalam kod di atas, takrif pembolehubah Incorrect_Var tidak memenuhi tatabahasa, oleh itu pengkompil membuang ralat sintaks untuk kod dan pelaksanaan terganggu.

Jenis Ralat dalam PHP

2. Ralat Amaran

Ralat ini timbul apabila skrip PHP cuba memproses sebarang maklumat yang tidak sah seperti cuba melakukan operasi fail pada fail yang tidak wujud atau cuba memanggil fungsi dengan bilangan nilai input iaitu berbeza daripada bilangan argumen yang hadir dalam definisi fungsi panggilan. Ini adalah ralat yang serius tetapi tidak menghentikan pelaksanaan program dan berakhir dengan mempamerkan hasil yang tidak dijangka. Pemalar ralat yang digunakan untuk mewakili amaran masa larian tanpa menamatkan pelaksanaan skrip: E_WARNING

Contoh:

Coretan kod di bawah ditulis untuk memanggil fail skrip lain dalam pengaturcaraan semasa.

<?php
echo "Beginning of program execution";
echo "<br>";
echo "<br>";
$Correct_Var = "Writing a code to demonstrate Warning Error";
echo $Correct_Var;
echo "<br>";
echo "<br>";
include ("MissingScript.php"); //Calling the script file which is not available
echo "Ending of program execution";
?>
Salin selepas log masuk

Output:

Menurut pengaturcaraan, pengkompil berjaya menyusun kod dan memulakan pelaksanaan. Pelaksanaan diteruskan secara berurutan. Untuk arahan termasuk (“MissingScript.php”), ia sedang mencari skrip dalam laluan lalai …/usr/share/php dan tidak menemui sebarang skrip dengan nama yang diberikan. Oleh itu, ia berakhir dengan menghasilkan mesej amaran untuk arahan khusus itu dan melaksanakan seluruh kod seperti yang direka.

Jenis Ralat dalam PHP

3. Notis Ralat

Ralat ini ditemui dalam PHP apabila terdapat sebarang pengekodan yang tidak sah telah dibangunkan dalam skrip. Ini dikategorikan sebagai ralat tidak kritikal yang tidak menghentikan pelaksanaan, berakhir dengan menghasilkan mesej ralat. Pemalar ralat yang digunakan untuk mewakili mesej notis masa Jalankan, terhasil kerana kehadiran kod tidak sah: E_NOTICE

Contoh:

<?php
echo "Beginning of program execution";
echo "<br>";
echo "<br>";
$Correct_Var = "Writing a code to demonstrate Notice Error";
echo $InCorrect_Var; //Try to display value stored in an undefined variable
echo "<br>";
echo "<br>";
echo "Ending of program execution";
?>
Salin selepas log masuk

Output:

Pengkompil tidak mengenali pembolehubah $InCorrect_Var kerana ia tidak ditakrifkan dalam kod. Oleh itu ia membuang ralat Notis.

Jenis Ralat dalam PHP

4. Ralat Maut

Ralat masa kompilasi yang dihadapi disebabkan oleh sebarang arahan yang tidak sah seperti tiada definisi fungsi untuk fungsi panggilan, dicipta sebagai ralat maut. Tahap keterukan jenis ralat ini adalah kritikal dan oleh itu ia tidak membenarkan pelaksanaan diteruskan dan membuang mesej ralat maut sebagai output. Pemalar ralat yang digunakan untuk mewakili ralat maut yang mencetuskan penamatan skrip: E_ERROR

Contoh:

Coretan kod di bawah direka bentuk untuk memanggil demonstrasi aplikasi fungsi dalam skrip PHP.

<?php
echo "Beginning of program execution";
echo "<br>";
echo "<br>";
$Correct_Var = "Writing a code to demonstrate Fatal Error";
echo $Correct_Var;
echo "<br>";
echo "<br>";
UndefinedFunction();//Calling a function which is not defined in the script
echo "Ending of program execution";
?>
Salin selepas log masuk

Output:

Memandangkan kod dibangunkan mengikut tatabahasa pengekodan yang betul, ia tidak menangkap sebarang ralat semasa penyusunan. Dalam fasa pelaksanaan ia tidak boleh menyahkod perintah untuk memanggil fungsi UndefinedFunction(), kerana ia tidak ditakrifkan dalam skop program. Oleh itu, ia mengakibatkan melontarkan mesej ralat yang membawa maut dan pelaksanaan program dihentikan.

Jenis Ralat dalam PHP

Additional Note

1. Error handling is easy in PHP. If any developer does not have access to the complete code for any application, it is recommended to use error handling functions in possible scenarios.

2. In order to avoid new error in the PHP programming, developer is expected to follow proper coding guidelines and stays alert towards probabilities of various types of errors, warnings and notices.

3. It is recommended not to allow any error or warning or notice to be displayed to the user. Hence the best practice for any safe PHP programming to ensure the required configuration to be available in php.ini file.

The desired value for the below variables are:

error_reporting as ' E_ALL'
display_errors as 'Off'
log_errors as 'On'
Salin selepas log masuk

The below code can be included in any PHP script to configure the desired values in the php.ini file:

error_reporting(E_ALL);
ini_set('display_errors','0');
ini_set('log_errors','1');
Salin selepas log masuk

4. PHP incorporates the feature to enable developer to write own customized error handling functions.
This function needs to be designed with some specific guidelines as follows:

Function should be capable of handling minimum of two input parameters: error message and error level and maximum of 5 input parameters by including the optional parameters such as line number, file and error context.

Atas ialah kandungan terperinci Jenis Ralat dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber: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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan