So implementieren Sie einen Header-Sprung in PHP

WJ
Freigeben: 2023-04-08 17:56:01
Original
5885 Leute haben es durchsucht

So implementieren Sie einen Header-Sprung in PHP

Methoden und Vorsichtsmaßnahmen für die Implementierung von Header-Sprüngen in PHP:

Die Funktion header() ist eine sehr nützliche Methode für Seitensprünge in PHP einfacher Weg. Die Hauptfunktion der Funktion header () besteht darin, den HTTP-Protokollheader (Header) an den Browser auszugeben. Die Funktion

header() ist wie folgt definiert:

void header (string string [,bool replace [,int http_response_code]])
Nach dem Login kopieren


Der optionale Parameter replace gibt an, ob der vorherige ähnliche Header ersetzt oder ein Header desselben Typs hinzugefügt werden soll (www.php. cn) Header, Standard ist Ersetzung.

Der zweite optionale Parameter http_response_code zwingt den HTTP-Antwortcode auf den angegebenen Wert. Der Header vom Typ Location in der Header-Funktion ist ein spezieller Header-Aufruf, der häufig zum Implementieren von Seitensprüngen verwendet wird. Hinweis:

1. Zwischen Standort und „:“ darf kein Leerzeichen stehen, sonst wird nicht gesprungen.
2. Es kann keine Ausgabe erfolgen, bevor der Header verwendet wird.
3. Der PHP-Code nach dem Header wird ebenfalls ausgeführt. Leiten Sie den Browser beispielsweise auf php.cn um

<?php
 //重定向浏览器
header("Location: https://www.php.cn");
 //确保重定向后,后续代码不会被执行
exit;
?>
Nach dem Login kopieren

1. PHP-Sprungcode in einem Satz:

<?php
$url = $_GET[&#39;url&#39;];
Header("Location:$url");
?>
Nach dem Login kopieren

2. PHP-Sprungcode, wenn Urteil:

Kopieren Sie den Code wie folgt:

if($_COOKIE["u_type"]){ 
header(&#39;location:register.php&#39;);
} else{ 
setcookie(&#39;u_type&#39;,&#39;1&#39;,&#39;86400*360&#39;);//设置cookie长期有效 
header(&#39;location:zc.html&#39;);
Nach dem Login kopieren

Hinweis: Wenn der Benutzer zc.php besucht, stellen Sie fest, ob ein Cookie vorhanden ist (www.php). cn) dann springen Sie zu register.php. Wenn es nicht existiert, erstellen Sie ein Cookie und springen Sie zu zc.html.

URL-Umleitungsfunktion

function redirect($url, $time=0, $msg=”) {
 //多行URL地址支持
$url = str_replace(array(“n”, “r”), ”, $url);
 if ( empty($msg) )
 $msg = “系统将在{$time}秒之后自动跳转到{$url}!”;
if (!headers_sent()) {
 // redirect
 if (0 === $time) {
 header(‘Location: ‘ . $url);
 } else {
 header(“refresh:{$time};url={$url}”);
echo($msg);
 }
 exit();
 } else {
 $str = “<meta http-equiv=&#39;Refresh&#39; content=&#39;{$time};URL={$url}&#39;>”;
if ($time != 0)
 $str .= $msg;
 exit($str);
 }
 }
Nach dem Login kopieren

Das Obige kann den 404-Status nicht zurückgeben Der Statuscode 404 wird nach dem Seitenwechsel zurückgegeben. Wir können Folgendes tun:

function getref()
 {
 $url = @$_SERVER[&#39;HTTP_REFERER&#39;];
 if( !empty( $url ) )
 {
 if( !strstr($url ,&#39;jb51.net&#39; ) && !strstr($url,&#39;jb51.net&#39;))
 {
 @header("http/1.1 404 not found");
 @header("status: 404 not found");
 include("404.html");//跳转到某一个页面,推荐使用这种方法
 exit();
 }
 }
 else
 {
 @header("http/1.1 404 not found");
 @header("status: 404 not found");
 include("404.html");//跳转到某一个页面,推荐使用这种方法
 exit();
 }
 }
Nach dem Login kopieren

Wenn Sie 301 ausführen möchten, ist es fast dasselbe

<?php
 $the_host = $_SERVER[&#39;HTTP_HOST&#39;];
 $request_uri = isset($_SERVER[&#39;REQUEST_URI&#39;]) ? $_SERVER[&#39;REQUEST_URI&#39;] : &#39;&#39;;
 if($the_host !== &#39;www.jb51.net&#39;)
 {
  //echo $_SERVER[&#39;HTTP_HOST&#39;].$_SERVER[&#39;PHP_SELF&#39;];
  header(&#39;HTTP/1.1 301 Moved Permanently&#39;);
  header(&#39;Location: https://www.jb51.net&#39; . $_SERVER[&#39;PHP_SELF&#39;] . $request_uri);
 }
 ?>
Nach dem Login kopieren

Verwandte Empfehlungen: php Chinesische Website

Das obige ist der detaillierte Inhalt vonSo implementieren Sie einen Header-Sprung in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!