Heim  >  Artikel  >  Backend-Entwicklung  >  Welche Vorsichtsmaßnahmen sind bei der Verwendung des PHP-Headers zum Springen zu Seiten zu beachten?

Welche Vorsichtsmaßnahmen sind bei der Verwendung des PHP-Headers zum Springen zu Seiten zu beachten?

coldplay.xixi
coldplay.xixiOriginal
2020-08-10 13:42:261884Durchsuche

Hinweise zur Verwendung des PHP-Headers für Seitensprünge: 1. Zwischen location und [:] darf kein Leerzeichen stehen, da sonst ein Fehler auftritt. 2. Es kann keine Ausgabe erfolgen, bevor der Header verwendet wird Der Header wird weiterhin ausgeführt.

Welche Vorsichtsmaßnahmen sind bei der Verwendung des PHP-Headers zum Springen zu Seiten zu beachten?

Hinweise zur Verwendung von PHP-Header für Seitensprünge:

Das Folgende ist ein Vergleich mit der Umleitung response.redirect in ASP: response.redirect的比较:

例1:

response.redirect "../test.asp"
header("location:../test.php");

两者区别:

asp的redirect函数可以在向客户发送头文件后起作用.

<html><head></head><body>
<%response.redirect "../test.asp"%>
</body></html>

查是php中下例代码会报错:

<html><head></head><body>
<?
header("location:../test.php");
?>
</body></html>

只能这样:

<?
header("location:../test.php");
?>
<html><head></head><body>...</body></html>

即header函数之前不能向客户发送任何数据.

例2:

asp中

<html><head></head><body>
<%
response.redirect "../a.asp"
response.redirect "../b.asp"
%>
</body></html>

结果是重定向a.asp文件.

php呢?

<?
header("location:../a.php");
header("location:../b.php");
?>
<html><head></head><body></body></html>

我们发现它重定向b.php

Beispiel 1:

if(...)
header("...");
else
{
...
}

Die Unterschied zwischen den beiden:

asp's redirect-Funktion kann nach dem Senden der Header-Datei an den Kunden funktionieren

Zum Beispiel:

if(...)
{ header("...");exit();}

Überprüfen Sie, ob der folgende Beispielcode in PHP einen Fehler meldet:

<[email=%@]%@LANGUAGE="VBSCRIPT[/email]" CODEPAGE="936"%>
<%if Request.ServerVariables("SERVER_NAME")="s.jb51.net" then
response.redirect "news/index.htm"
else%>
<%end if%>
<script>
var url = location.href;
if(url.indexOf(&#39;http://www.devdao.com/&#39;)!=-1)location.href=&#39;/index/index.htm&#39;;
if(url.indexOf(&#39;http://www.knowsky.com/&#39;)!=-1)location.href=&#39;/index1/index.htm&#39;;
if(url.indexOf(&#39;http://www.google.com/&#39;)!=-1)location.href=&#39;/cn/index.asp&#39;;
if(url.indexOf(&#39;http://www.baidu.com/&#39;)!=-1)location.href=&#39;/cn/index.asp&#39;;
</script>

kann nur auf diese Weise:
rrreee

Das heißt, die Header-Funktion kann vorher keine Daten an den Kunden senden.
Beispiel 2: Das Ergebnis von

rrreee
in 🎜🎜🎜asp ist die Umleitung des a. asp-Datei.🎜🎜php ?🎜rrreee🎜Wir haben festgestellt, dass b.php umgeleitet wird.🎜🎜Es stellt sich heraus, dass nach der Ausführung der Umleitung in asp der folgende Code nicht ausgeführt wird. 🎜🎜Nachdem der Header ausgeführt wurde, führt PHP weiterhin den folgenden Code aus.🎜🎜In dieser Hinsicht ist die Header-Umleitung in PHP nicht so gut wie die Umleitung in ASP. Manchmal können wir den folgenden Code nicht ausführen, nachdem wir ihn umgeleitet haben:🎜🎜 Im Allgemeinen verwenden wir 🎜rrreee🎜, aber wir können einfach die folgende Methode verwenden: 🎜rrreee🎜 Beachten Sie außerdem, dass bei der Codierung mit Unicode (UTF-8) ebenfalls Probleme auftreten und Sie die Cache-Einstellungen anpassen müssen 🎜rrreee🎜 🎜Verwandte Lernempfehlungen: 🎜php-Programmierung🎜 (Video)🎜🎜 🎜

Das obige ist der detaillierte Inhalt vonWelche Vorsichtsmaßnahmen sind bei der Verwendung des PHP-Headers zum Springen zu Seiten zu beachten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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