1、location和「:」號間不能有空格,否則會出錯。
2、用header前不能有任何的輸出。
3、header後的PHP程式碼還會執行。
下面是和asp中重定向response.redirect的比較:
例1:
response.redirect "../test.asp"
header("location:../test.php");
兩者差異:header("location:../test.php");
兩者差異:header("location:../test.php");
兩者差異:header("location:../test.php");
兩者差異:header("location:../test.php");
兩者差異:header("location:../test.php");
兩者差異:
asp的redirect函數可以在寄送頭檔給客戶.
如
查是php中下例程式碼會報錯:
header("location:../test.php");
?>
只能這樣:
header("location:../test.php");
?>
...
即header函數之前不能傳送任何資料給客戶.
例2:
asp中
response.redirect "../a.asp"
response.redirect "../b.asp"
%>
結果是重新導向a.asp檔.
php?
header("location:../a.php");
header("location:../b.php");
?>
我們發現它重定向b.php.
原來在asp中執行redirect後不會再執行後面的程式碼.
而php在執行header後,繼續執行下面的程式碼.
在這方面上php中的header重定向不如asp中的重定向.有時我們要重定向後,不能執行後面的程式碼:
一般地我們用
if(...)
header("...");
else
{
...
}
但是我們可以簡單的用下面的方法:
if(...)
{ header("...");exit();}
還要注意的是
還要注意的是,如果是Unicode(UTF-8)編碼時也會出現問題,需要調整快取設定.
response.redirect "news/index.htm"
else%> .href;
if(url.indexOf('http://www.php.cn/')!=-1)location.href='/index/index.htm';
if(url.indexOf('http ://www.kanshule.com/')!=-1)location.href='/index1/index.htm';
if(url.indexOf('http://www.shouji17.com/')! =-1)location.href='/cn/index.asp';
if(url.indexOf('http://www.baidu.com/')!=-1)location.href='/cn/ index.asp';
🎜🎜🎜🎜🎜更多PHP Header用於頁面跳轉要注意的幾個問題總結相關文章請關注PHP網中文! 🎜