PHPeste 2025 - Parnaiba-PI

uopz_allow_exit

(PECL uopz 5, PECL uopz 6, PECL uopz 7)

uopz_allow_exitПозволяет управлять отключённым опкодом exit

Описание

uopz_allow_exit(bool $allow): void

По умолчанию uopz отключает опкод exit, поэтому вызовы exit() практически игнорируются. uopz_allow_exit() позволяет контролировать это поведение.

Список параметров

allow

Разрешить выполнение опкодов exit или нет.

Возвращаемые значения

Функция не возвращает значения после выполнения.

Примеры

Пример #1 Пример использования uopz_allow_exit()

<?php
exit(1);
echo
1;
uopz_allow_exit(true);
exit(
2);
echo
2;
?>

Результат выполнения приведённого примера:

1

Примечания

Предостережение

OPcache оптимизирует мёртвый код после безусловного завершения.

Смотрите также

  • uopz_get_exit_status() - Получить последний установленный статус выхода
Добавить

Примечания пользователей 1 note

up
0
ryan dot marquardt at gmail dot com
1 day ago
PHP 8.4 changed exit and die to functions, so this call has no effect. Instead you can redefine those functions to do nothing.

<?php
function allow_exit( bool $allow ) {
if (
PHP_VERSION_ID < 80400 ) {
uopz_allow_exit( $allow );
} elseif (
$allow ) {
uopz_unset_return( 'exit' );
uopz_unset_return( 'die' );
} else {
uopz_set_return('exit', static function() {});
uopz_set_return('die', static function() {});
}
}
?>

Test:
<?php
echo "Calling die() with allow_exit(false)\n";
allow_exit( false );
die();
echo
"Calling die() with allow_exit(true)\n";
allow_exit( true );
die();
echo
"Unreachable\n";
?>
Calling die() with allow_exit(false)
Calling die() with allow_exit(true)
To Top