Gestion de la terminaison du script après la redirection d'en-tête
En PHP, la fonction header() est utilisée pour envoyer des en-têtes HTTP au client. Lorsqu'il est utilisé pour la redirection, une question courante se pose : devez-vous appeler exit() ou return après avoir appelé header() ?
Considérez le scénario suivant :
<?php $urlFailToGoTo = '/formerror.php'; if (sth) { header(sprintf("Location: %s", $urlFailToGoTo)); exit(); // Should I call exit() here? } ?>
Après l'envoi de l'en-tête de redirection, l'exécution du script continue à moins qu'elle ne soit explicitement terminée. Pour assurer une redirection immédiate, il est recommandé d'appeler exit() après header(). Cela empêche l'exécution de tout code ultérieur qui pourrait potentiellement interférer avec la redirection.
Pourquoi exit() est préférable
Alors que exit() et return peuvent terminer le script exécution, exit() présente quelques avantages :
Par conséquent, la meilleure pratique consiste à appeler exit() immédiatement après avoir appelé header() pour garantir une redirection propre et immédiate.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!