Position actuelle: Accueil> Derniers articles> Comment utiliser la fonction d'en-tête et afficher tous les en-têtes actuellement définis via headers_list ()?

Comment utiliser la fonction d'en-tête et afficher tous les en-têtes actuellement définis via headers_list ()?

M66 2025-06-28

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.

1 ?? Utiliser la fonction d'en-tête ()

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:

Régler la redirection

 header('Location: https://m66.net/new-page.php');
exit;

Cette ligne de code redirigera le navigateur vers https://m66.net/new-page.php .

Définir le type de contenu

 header('Content-Type: application/json');
echo json_encode(['status' => 'ok']);

Cela indiquera au client que le contenu suivant est au format JSON.

Cache de contrôle

 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.

2 ?? Afficher tous les en-têtes actuellement définis

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.

Exemple de code

 <?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