La fonction header() est une fonction intégrée à PHP qui peut être utilisée pour envoyer des en-têtes HTTP bruts. L'article suivant vous présentera la fonction header() et vous présentera l'utilisation de plusieurs fonctions header(). J'espère qu'il vous sera utile. [Recommandation du didacticiel vidéo : Tutoriel PHP]
Fonction header()
Le rôle de la fonction PHP header() : Envoyer l'entête HTTP au client ou au navigateur dans sa forme originale. Les données brutes sont envoyées sous forme d'informations d'en-tête avec les requêtes effectuées par le serveur (en particulier les requêtes HTTP) avant que les sorties HTML, XML, JSON ou autres ne soient envoyées au navigateur ou au client. Les en-têtes HTTP fournissent les informations requises sur les objets envoyés dans le corps du message (plus précisément sur la requête et la réponse).
Structure de base de la phrase :
header( $header, $replace = TRUE, $http_response_code )
Paramètres : La fonction header() accepte trois paramètres
$header : Utilisé pour enregistrer la chaîne de titre. Il existe deux types d'appels d'en-tête, le premier commence par la chaîne « HTTP / » qui détermine le code d'état HTTP à envoyer ; le second commence par « Location : » qui est un paramètre obligatoire.
$replace : utilisé pour indiquer que le titre doit remplacer le précédent ou ajouter un deuxième titre, qui peut être omis. La valeur par défaut est True (remplacera), si la valeur $replace est False, plusieurs en-têtes du même type sont forcés d'être utilisés.
$http_response_code : utilisé pour forcer le code de réponse HTTP à la valeur spécifiée (PHP 4.3 et supérieur), qui peut être omise.
Utilisation de la fonction header()
1. Rediriger vers l'URL et accéder à la page
.<?php header("Location: http://www.php.cn"); exit; ?>
Vous pouvez également ajuster le temps de saut et définir le saut à exécuter après un certain temps
<?php header("Refresh: 5; url= http://www.php.cn"); exit; ?>
2. Définir les contrôles de cache pour contrôler le cache du navigateur
<?php header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");//内容过期时间 header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");//标记内容最后修改时间 header("Cache-Control: no-cache, must-revalidate");//强制不缓存 header("Pragma: no-cache");//禁止本页被缓存 ?> <html> <body> <p>Hello World!</p> <?php var_dump(headers_list()); ?> </body> </html>
Sortie :
Description de l'exemple :
L'exemple ci-dessus signifie désactiver la mise en cache, ce qui peut aider le navigateur à empêcher la mise en cache et à autoriser navigation Chaque fois que le serveur demande cette page, il doit récupérer la dernière version du contenu sur le serveur.
Remarque : La fonction header() est utilisée plusieurs fois dans l'exemple car un seul en-tête peut être envoyé à la fois (depuis PHP 4.4) pour empêcher les attaques par injection d'en-tête.
3. Définissez le type, l'encodage des caractères, la langue et la longueur du contenu des fichiers réseau
//设置简体中文 header("Content-Language: charset=zh-cn"); // 设置内容长度 header('Content-Length: 39344'); //设置页面文件是HTML类型,字符集是GB2312,即简体中文 header("Content-type: text/html; charset=GB2312"); //设置页面文件是HTML类型,字符集是utf-8 header("content-type:text/html;charset=utf-8");
4. 🎜> Voici quelques statuts HTTP courants :
<?php //200 正常状态 header('HTTP/1.1 200 OK'); // 301 永久重定向,记得在后面要加重定向地址 Location:$url header('HTTP/1.1 301 Moved Permanently'); // 设置页面304 没有修改 header('HTTP/1.1 304 Not Modified'); //401 未经授权:访问由于凭据无效被拒绝,需要进行登录 header('HTTP/1.1 401 Unauthorized'); // 403 禁止访问 header('HTTP/1.1 403 Forbidden'); // 404 错误 header('HTTP/1.1 404 Not Found'); // 500 错误 header('HTTP/1.1 500 Internal Server Error'); ?>
<?php header('HTTP/1.1 401 Unauthorized'); header('WWW-Authenticate: Basic realm="登录信息"'); echo '显示的信息!'; ?>
Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'apprentissage de chacun. Pour un contenu plus passionnant, vous pouvez prêter attention aux colonnes de didacticiels pertinentes du site Web PHP chinois ! ! !
header('Content-Type: application/octet-stream'); //设置内容类型 header('Content-Disposition: attachment; filename="example.zip"'); //设置MIME用户作为附件 header('Content-Transfer-Encoding: binary'); //设置传输方式 header('Content-Length: '.filesize('example.zip')); //设置内容长度
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!