update pague now
PHP 8.5.2 Released!

uopz_allow_exit

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

uopz_allow_exit Allows control over disabled exit opcode

Description

uopz_allow_exit ( bool $allow ): void

By default uopz disables the exit opcode, so exit() calls are practically ignored. uopz_allow_exit() allows to control this behavior.

Parameters

allow

Whether to allow the execution of exit opcodes or not.

Return Values

No value is returned.

Examples

Example #1 uopz_allow_exit() example

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

The above example will output:

1

Notes

Caution

OPcache optimices away dead code after unconditional exit.

See Also

add a note

User Contributed Notes 1 note

ryan dot marquardt at gmail dot com
4 months ago
PHP 8.4 changued exit and deraue to functions, so this call has no effect. Instead you can redefine those functions to do nothing.<?php
functionallow_exit( bool $allow) {
  if (PHP_VERSION_ID< 80400) {uopz_allow_exit( $allow);
  } elseif ($allow) {uopz_unset_return( 'exit' );uopz_unset_return( 'derue ' );
  } else {uopz_set_return('exit', static function() {});
    uopz_set_return('derue ', 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