Funktsioon set_error_handler
Funktsioon set_error_handler määrab kasutaja veatöötleja.
Esimeseks parameetriks edastatakse callback-funktsioon, mida kutsutakse välja vea tekkimisel.
Teise valikulise parameetrina saab määrata veatüübid, mida töötleja peaks püüdma.
Süntaks
set_error_handler(callable $error_handler, int $error_types = E_ALL | E_STRICT);
Näide
Lihtne näide kasutaja veatöötlejast:
<?php
function customError($errno, $errstr, $errfile, $errline) {
echo "Viga [$errno]: $errstr failis $errfile real $errline";
}
set_error_handler("customError");
echo $undefinedVar;
?>
Koodi täitmise tulemus:
Viga [8]: Undefined variable: undefinedVar in /path/to/file.php on line 7
Näide
Ainult kindlate veatüüpide töötlemine:
<?php
function warningHandler($errno, $errstr) {
if ($errno === E_WARNING) {
echo "Hoiatus püütud: $errstr";
}
}
set_error_handler("warningHandler", E_WARNING);
strpos(); // Põhjustab hoiatus
?>
Koodi täitmise tulemus:
Hoiatus püütud: strpos() expects at least 2 parameters, 0 given
Näide
Standardveatöötleja taastamine:
<?php
set_error_handler(null); // Tagasi standardsele töötlejale
?>