(PHP 7, PHP 8)
ParseError wird geworfen, wenn bei der Analyse des PHP-Codes ein Fehler auftritt, z. B. wenn eval() aufgerufen wird.
Hinweis: Seit PHP 7.3.0 erweitert ParseError CompileError ; vorher war es eine Erweiterung von Error .
The priority of Parse Error should be higher than that of Fatal Error,Parse Error, which has the highest priority among all PHP exceptions. See the following example:
<?php
error_reporting(E_ALL);
test()
//System output a parse error
?>
<?php
error_reporting(E_WARNING);
test()
//System output a parse error
?>
<?php
error_reporting(E_ERROR);
test()
//System output a parse error
?>
<?php
error_reporting(E_PARSE);
test()
//System output a parse error
?><?php
/*
* The function eval() evaluate his argument as an instruction PHP
* Then the argument must respect the standar of PHP codage
* In this example the semicolon are missign
*/
try{
eval("echo 'toto' echo 'tata'");
}catch(ParseError $p){
echo $p->getMessage();
}
/*
* If you run this code the result is different of the result of above code
* PHP will output the standar parse Error: syntax error, ....
*
eval("echo 'toto' echo 'tata'");
*/