A PHP Error occurs when something is wrong in the PHP code. An error can be simple as a missing semicolon, or complex as calling an incorrect variable.

To efficiently resolve a PHP issue in a script, you must understand what kind of problem is occurring.

tutorial on types of php errors

The four types of PHP errors are:

1. Warning Error
2. Notice Error
3. Parse Error
4. Fatal Error

Warning Error

A warning error in PHP does not stop the script from running. It warns you that there is a problem likely to cause bigger issues in the future.

The most common causes for warning errors are:

  • Calling on an external file that does not exist in the directory
  • Wrong parameters in a function

For instance:

<?php
echo "Warning error"';
include ("external_file.php");
?>

As there is no “external_file”, the output displays a message, notifying it failed to include it. Still, it doesn’t stop executing the script.

example of warning error

Notice Error

Notice errors are minor errors. They are similar to warning errors, as they also don’t end execution. Often, the system is uncertain whether it’s an actual error or regular code. They usually occur if the script needs access to an undefined variable.

Example:

<?php
$a="Defined error";
echo "Notice error";
echo $b;
?>

In the script above, we defined a variable $a, but called on the undefined variable $b. PHP executes the script but with a notice error message telling you the variable is not defined.

example of php notice error

Parse Error (Syntax)

Parse errors are caused by misused or missing symbols in a syntax. The compiler catches the error and terminates the script.

Parse errors are caused by:

  • Unclosed brackets or quotes
  • Missing or extra semicolons or parentheses
  • Misspellings

For example, the following script would stop execution and signal a parse error:

<?php
echo "Red";
echo "Blue";
echo "Green"
?>

It is unable to execute because of the missing semicolon in the third line.

example of parse error in php

Fatal Error

Fatal errors are ones that crash your program and are classified as critical errors.

Undefined functions or classes in the script are the main reasons for these errors and what make it unable to execute.

Three (3) types of fatal errors:

  1. Startup fatal error (when the system can’t run the code at installation)
  2. Compile time fatal error (when a programmer tries to use nonexistent data)
  3. Runtime fatal error (happens while the program is running, causing the code to stop working completely)

For instance, the following script would result in a fatal error:

<?php
function sub()
{
$sub=6-1;
echo "The sub= ".$sub;
}
div();
?>

The output tells you why it is unable to compile, as in the image below:

example of fatal error in php

Conclusion

Distinguishing between the four types of PHP errors can help you quickly identify and solve problems in your script. Make sure to pay attention to ouput messages, as they often report on additional issues or warnings.