Из документации PHP
https://www.php.net/manual/ru/function.assert.php
Пример #4 Ожидания с собственным исключением
<?php
class CustomError extends AssertionError {}
assert(true == false, new CustomError('True не является false!'));
echo 'Привет!';
?>
хочу дополнить класс CustomError
class CustomError extends AssertionError {
public function setLog() {}
}
Но у меня не получается вызвать метод setLog() если assert терпит неудачу
Если я сделаю
class CustomError extends AssertionError {
public function __construct() {
$this-> setLog();
}
public function setLog() {}
}
То конструктор вызывает вне зависимости будет ли assert true или false
assert(true, new CustomError('True не является false!')); -- Вызовет конструтор хотя assert true
Получает что assert независимо от утверждения будет инициализировать класс CustomError