Forum PHP 2025

uopz_allow_exit

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

uopz_allow_exitPermet de contrôler l'opcode exit désactivé

Description

uopz_allow_exit(bool $allow): void

Par défaut, uopz désactive l'opcode exit, donc les appels à exit() sont pratiquement ignorés. uopz_allow_exit() permet de contrôler ce comportement.

Liste de paramètres

allow

Autoriser ou non l'exécution des opcodes exit.

Valeurs de retour

Aucune valeur n'est retournée.

Exemples

Exemple #1 Exemple de uopz_allow_exit()

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

L'exemple ci-dessus va afficher :

1

Notes

Attention

OPcache optimise le code mort après une sortie inconditionnelle.

Voir aussi

add a note

User Contributed Notes 1 note

up
0
ryan dot marquardt at gmail dot com
13 days 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