Heim > Backend-Entwicklung > PHP-Tutorial > Wie lege ich benutzerdefinierte HTTP-Antwortcodes in PHP fest?

Wie lege ich benutzerdefinierte HTTP-Antwortcodes in PHP fest?

Barbara Streisand
Freigeben: 2024-12-15 12:18:09
Original
151 Leute haben es durchsucht

How to Set Custom HTTP Response Codes in PHP?

So senden Sie einen HTTP-Antwortcode in PHP

Das Senden von HTTP-Antwortcodes aus einem PHP-Skript ist für die ordnungsgemäße Kommunikation mit dem Client unerlässlich. Dieser Artikel behandelt drei Methoden zum Senden benutzerdefinierter Antwortcodes.

PHP 4.0: Manuelle Antwortcode-Assemblierung

Mit der Funktion header() können Sie eine benutzerdefinierte HTTP-Antwortzeile einschließlich des HTTP-Antwortcodes definieren . Für CGI-PHP müssen Sie jedoch den Status-HTTP-Header verwenden.

// 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");
Nach dem Login kopieren

PHP 4.3: Drittes Argument der Header-Funktion

Um Parsing-Probleme mit dem manuellen Ansatz zu vermeiden, können Sie dies tun Verwenden Sie das dritte Argument der Funktion header(), mit dem Sie den Antwortcode angeben können.

// 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);
Nach dem Login kopieren

PHP 5.4 : http_response_code()-Funktion

PHP 5.4 führte die dedizierte http_response_code()-Funktion ein, die das Festlegen von Antwortcodes vereinfacht.

http_response_code(404);
Nach dem Login kopieren

Kompatibilitätsfunktion für PHP 4.3

Für PHP-Versionen unter 5.4 kann eine Kompatibilitätsfunktion zur Bereitstellung verwendet werden http_response_code()-Funktionalität.

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;
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie lege ich benutzerdefinierte HTTP-Antwortcodes in PHP fest?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage