Dans notre article précédent, nous vous avons présenté la définition de l'en-tête Lorsque de nombreuses personnes verront le titre, elles se demanderont si elles l'ont déjà présenté aux clients. envoyer des en-têtes HTTP bruts ? Est-ce vraiment le cas ? Aujourd’hui nous allons vous montrer quelles sont les fonctions de la fonction header en php ?
Regardez d'abord la définition dans le document officiel
(PHP 4, PHP 5, PHP 7)
en-tête — Envoyer l'en-tête HTTP natif
1 void header ( string $string [, bool $replace = true [, int $http_response_code ]] )
Paramètres :
chaîne
Il y a deux têtes spéciales. Le premier commençant par "HTTP/" (la casse n'est pas significative) servira à calculer le Code d'état HTTP à envoyer. Par exemple, si vous utilisez un script PHP sur le serveur Apache pour gérer les requêtes de fichiers inexistants (en utilisant la directive ErrorDocument), vous espérerez que le script réponde avec la code d'état correct.
1 <?php 2 header("HTTP/1.0 404 Not Found"); 3 ?>
Le deuxième cas particulier est l'information d'en-tête "Emplacement :". Il envoie non seulement le message au navigateur, mais renvoie également un code d'état REDIRECT (302) au navigateur, sauf si le code d'état a été défini sur 201 ou 3xx .
1 <?php 2 header("Location: http://www.example.com/"); /* Redirect browser */ 3 4 /* Make sure that code below does not get executed when we redirect. */ 5 exit; 6 ?>
<code class="parameter"> <span style="font-family: Microsoft YaHei">replace</span>
remplacer
Le paramètre facultatif replace
indique s'il faut remplacer l'en-tête précédent du même type par l'en-tête suivant. Remplacé par défaut. Si vous passez FALSE
, vous pouvez forcer la coexistence des mêmes informations d'en-tête. Par exemple :
1 <?php 2 header('WWW-Authenticate: Negotiate'); 3 header('WWW-Authenticate: NTLM', false); 4 ?>
http_response_code
Spécifier de force la valeur du HTTP réponse. Notez que ce paramètre n'est valide que lorsque la chaîne du message string
() n'est pas vide.
Les utilisations courantes de la fonction header sont les suivantes :
1. Redirection
header('Location: http://www.example.com/');
2. Contenu spécifié :
header('Content-type: application/pdf');
3. Pièce jointe :
header('Content-type: application/pdf'); //指定内容为附件,指定下载显示的名字 header('Content-Disposition: attachment; filename="downloaded.pdf"'); //打开文件,并输出 readfile('original.pdf')
Le code ci-dessus peut produire l'effet d'une boîte de dialogue de fichier dans le navigateur
4. Permettre aux utilisateurs d'obtenir les dernières informations et données au lieu de la mise en cache
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // 设置临界时间
Exemple détaillé
Résumé :
Après avoir lu cet article, je pense que vous connaissez tous le rôle de la fonction header en php. J'espère qu'elle vous sera utile dans votre travail !Recommandations associées :
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!