Maison > développement back-end > tutoriel php > Comment définir des codes de réponse HTTP personnalisés en PHP ?

Comment définir des codes de réponse HTTP personnalisés en PHP ?

Barbara Streisand
Libérer: 2024-12-15 12:18:09
original
147 Les gens l'ont consulté

How to Set Custom HTTP Response Codes in PHP?

Comment envoyer un code de réponse HTTP en PHP

L'envoi de codes de réponse HTTP à partir d'un script PHP est essentiel pour assurer une bonne communication avec le client. Cet article couvre trois méthodes pour envoyer des codes de réponse personnalisés.

PHP 4.0 : Assemblage manuel du code de réponse

La fonction header() vous permet de définir une ligne de réponse HTTP personnalisée, incluant le code de réponse HTTP. . Cependant, pour CGI PHP, vous devrez utiliser l'en-tête HTTP Status.

// Assembly manually
header("HTTP/1.1 200 OK");

// For CGI PHP
if (substr(php_sapi_name(), 0, 3) == 'cgi')
    header("Status: 404 Not Found");
else
    header("HTTP/1.1 404 Not Found");
Copier après la connexion

PHP 4.3 : Troisième argument de la fonction d'en-tête

Pour éviter les problèmes d'analyse avec l'approche manuelle, vous pouvez utilisez le troisième argument de la fonction header(), qui permet de spécifier le code de réponse.

// Set the non-empty first argument to anything
header(':', true, 404);

// Use a custom header field name
header('X-PHP-Response-Code: 404', true, 404);
Copier après la connexion

PHP 5.4 : Fonction http_response_code()

PHP 5.4 a introduit la fonction dédiée http_response_code(), qui simplifie la tâche de définition des codes de réponse.

http_response_code(404);
Copier après la connexion

Fonction de compatibilité pour PHP 4.3

Pour les versions PHP inférieures à 5.4, une fonction de compatibilité peut être utilisée pour fournir le http_response_code() fonctionnalité.

function http_response_code($newcode = NULL)
{
    static $code = 200;
    if($newcode !== NULL)
    {
        header('X-PHP-Response-Code: '.$newcode, true, $newcode);
        if(!headers_sent())
            $code = $newcode;
    }       
    return $code;
}
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal