Dans PHP, la fonction d'en-tête () est un outil très important pour envoyer des en-têtes de message HTTP bruts au client. À travers elle, nous pouvons contrôler le cache, la redirection, le type de contenu, etc. de la page. Dans le même temps, la fonction en tête_list () peut nous aider à afficher tous les en-têtes HTTP qui ont été définis, ce qui est très utile pour le débogage et la compréhension du comportement du programme.
Cet article introduira en détail comment utiliser en-tête () et en tête_list () et vous aider à maîtriser leur utilisation via des exemples de code.
La syntaxe de base de la fonction d'en-tête () est la suivante:
header(string $header, bool $replace = true, int $response_code = 0): void
$ En-tête : le contenu de l'en-tête à envoyer, tel que le contenu: application / json .
$ Remplace : Que ce soit pour remplacer l'en-tête par le même nom dans le nom précédent, la valeur par défaut est vraie .
$ réponse_code : paramètre facultatif pour définir le code d'état de réponse HTTP.
Les usages courants comprennent:
header('Location: https://m66.net/new-page.php');
exit;
Cette ligne de code redirigera le navigateur vers https://m66.net/new-page.php .
header('Content-Type: application/json');
echo json_encode(['status' => 'ok']);
Cela indiquera au client que le contenu suivant est au format JSON.
header('Cache-Control: no-cache, no-store, must-revalidate');
header('Pragma: no-cache');
header('Expires: 0');
Ces en-têtes sont utilisés pour interdire la mise en cache, garantissant que les utilisateurs obtiennent le dernier contenu à chaque visite.
Parfois, nous appelons en-tête () plusieurs fois dans le code, mais quels en-têtes sont envoyés spécifiquement? À l'heure actuelle, les en-têtes_list () sont utiles.
<?php
header('Content-Type: text/plain');
header('X-Custom-Header: CustomValue');
header('Location: https://m66.net/redirected');
$headers = headers_list();
echo "Actuellement défini HTTP tête:\n";
foreach ($headers as $h) {
echo $h . "\n";
}
?>
illustrer :
Nous avons installé trois en-têtes.
Utilisez ensuite des en-têtes_list () pour faire envoyer tous les en-têtes et les sortir ligne par ligne.
Après avoir exécuté ce script, vous verrez une sortie comme ceci:
Content-Type: text/plain
X-Custom-Header: CustomValue
Location: https://m66.net/redirected
Veuillez noter:
Si le script a déjà publié du contenu (tel que Echo ), l'appel en tête () entraînera une erreur "d'en-tête déjà envoyée".
Par conséquent, lors de la modification des en-têtes, assurez-vous qu'ils sont avant toute sortie.
Étiquettes associées:
header