Maison  >  Article  >  développement back-end  >  À quoi devez-vous faire attention lorsque l’en-tête php passe à la page ?

À quoi devez-vous faire attention lorsque l’en-tête php passe à la page ?

coldplay.xixi
coldplay.xixioriginal
2020-09-30 10:04:442891parcourir

Ce à quoi vous devez faire attention lorsque vous accédez à la page de saut d'en-tête php sont : 1. Il ne peut y avoir d'espace entre l'emplacement et ":", sinon une erreur se produira 2. Il ne peut y avoir de sortie ; avant d'utiliser l'en-tête ; 3. Après l'en-tête, le code PHP sera également exécuté.

À quoi devez-vous faire attention lorsque l’en-tête php passe à la page ?

Lorsque vous utilisez header("location:test.php") pour accéder à PHP, veuillez faire attention aux points suivants, qui aideront à résoudre quelques problèmes pour les novices Problèmes fréquemment rencontrés

1 Il ne peut pas y avoir d'espace entre l'emplacement et le signe ":", sinon une erreur se produira.

2. Il ne peut y avoir de sortie avant d'utiliser l'en-tête.

3. Le code PHP après l'en-tête sera également exécuté.

Ce qui suit est une comparaison avec réponse.redirect en asp :

Exemple 1 :

response.redirect "../test.asp"
header("location:../test.php");

La différence entre les deux :

La fonction de redirection d'ASP peut fonctionner après l'envoi du fichier d'en-tête au client

Par exemple,

<html><head></head><body>
<%response.redirect "../test.asp"%>
</body></html>

Si vous vérifiez l'exemple de code suivant en PHP, une erreur sera signalée :

<html><head></head><body>
<?
header("location:../test.php");
?>
</body></html>

C'est le seul moyen ; Où est le fichier.

php?

<?
header("location:../test.php");
?>
<html><head></head><body>...</body></html>

Nous avons constaté qu'il redirige b.php.

Il s'avère que après avoir exécuté la redirection en asp, le code suivant ne sera pas exécuté.

Après que php ait exécuté l'en-tête, il continue d'exécuter le code suivant.

À cet égard, la redirection d'en-tête en php n'est pas aussi bon que la redirection en asp. Parfois, nous ne pouvons pas exécuter ce qui suit après la redirection du code :

Généralement, nous utilisons

<html><head></head><body>
<%
response.redirect "../a.asp"
response.redirect "../b.asp"
%>
</body></html>

mais nous pouvons simplement utiliser la méthode suivante :

<?
header("location:../a.php");
header("location:../b.php");
?>
<html><head></head><body></body></html>

Notez également que si vous utilisez Unicode (UTF-8), des problèmes peuvent également survenir lors du codage et les paramètres de cache doivent être ajustés

if(...)
header("...");
else
{
...
}

Si vous souhaitez en savoir plus sur la programmation, veuillez payer. attention à la rubrique

formation php

!

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn