PHPKonf 2020 Online

ParseError

(PHP 7, PHP 8)

Введение

ParseError выбрасывается, когда возникает ошибка при разборе PHP-кода, например, когда вызывается функция eval().

Замечание: Начиная с PHP 7.3.0, класс ParseError наследуется от CompileError Ранее этот класс расширял класс Error.

Обзор классов

ParseError extends CompileError {
/* Наследуемые свойства */
protected string $message ;
protected int $code ;
protected string $file ;
protected int $line ;
/* Наследуемые методы */
final public Error::getMessage ( ) : string
final public Error::getPrevious ( ) : Throwable
final public Error::getCode ( ) : mixed
final public Error::getFile ( ) : string
final public Error::getLine ( ) : int
final public Error::getTrace ( ) : array
final public Error::getTraceAsString ( ) : string
public Error::__toString ( ) : string
final private Error::__clone ( ) : void
}
add a note add a note

User Contributed Notes 1 note

up
0
andrian dot test dot job at gmail dot com
1 year ago
<?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'");

*/
To Top