Maison  >  Article  >  développement back-end  >  Explication détaillée de l'utilisation de l'en-tête php

Explication détaillée de l'utilisation de l'en-tête php

藏色散人
藏色散人original
2020-07-08 09:48:443221parcourir

l'en-tête php est utilisé pour envoyer l'en-tête HTTP d'origine au client. La syntaxe de cette fonction est "header(string,replace,http_response_code)", où la chaîne de paramètre représente la chaîne d'en-tête à envoyer.

Explication détaillée de l'utilisation de l'en-tête php

Fonction PHP header()

Définition et utilisation

fonction header() vers le client Le client envoie des en-têtes HTTP bruts.

Il est important de réaliser que la fonction header() doit être appelée avant qu'une sortie réelle ne soit envoyée (en PHP 4 et supérieur, vous pouvez utiliser la mise en cache de sortie pour résoudre ce problème) :

<html>
<?php
// 结果出错
// 在调用 header() 之前已存在输出
header(&#39;Location: http://www.example.com/&#39;);
?>

Syntaxe

header(string,replace,http_response_code)

Paramètres

chaîne Obligatoire. Spécifie la chaîne d'en-tête à envoyer.

remplacer

Facultatif. Indique si cet en-tête remplace l'en-tête précédent ou ajoute un deuxième en-tête.

La valeur par défaut est vraie (remplacement). false (autoriser plusieurs en-têtes du même type).

http_response_code Facultatif. Force le code de réponse HTTP à la valeur spécifiée. (Disponible en PHP 4 et supérieur)

Conseils et notes

Remarque : depuis PHP 4.4, cette fonction empêche l'envoi de plusieurs en-têtes en même temps. Il s'agit d'une mesure de protection contre les attaques par injection d'en-tête.

Exemple

Exemple 1

<?php
// Date in the past
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache");
header("Pragma: no-cache");
?>
<html>
<body>
...
...

Remarque : l'utilisateur peut définir certaines options pour modifier les paramètres de cache par défaut du navigateur. En envoyant l'en-tête ci-dessus, vous pouvez remplacer n'importe lequel de ces paramètres et forcer le navigateur à ne pas mettre en cache !

Exemple 2

Invite l'utilisateur à enregistrer un fichier PDF généré (l'en-tête Content-Disposition est utilisé pour fournir un nom de fichier recommandé et forcer le navigateur à afficher une boîte de dialogue d'enregistrement) :

<?php
header("Content-type:application/pdf");
// 文件将被称为 downloaded.pdf
header("Content-Disposition:attachment;filename=&#39;downloaded.pdf&#39;");
// PDF 源在 original.pdf 中
readfile("original.pdf");
?>
<html>
<body>
...
...

Remarque : Microsoft IE 5.5 présente un bug qui empêche le mécanisme ci-dessus. Ce bogue peut être résolu en effectuant une mise à niveau vers le Service Pack 2 ou une version ultérieure.

Pour plus de connaissances connexes, veuillez visiter le Site Web PHP chinois !

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