PHP頁面跳轉(zhuǎn)實現(xiàn)的功能就是將網(wǎng)站中一個網(wǎng)頁跳轉(zhuǎn)到另一個網(wǎng)頁中。對于剛剛學(xué)習(xí)PHP語言的朋友來說,是必須要掌握的基礎(chǔ)方法。
頁面跳轉(zhuǎn)可能是由于用戶單擊鏈接、按鈕等觸發(fā)的,也可能是系統(tǒng)自動產(chǎn)生的。頁面自動跳轉(zhuǎn)在WEB開發(fā)中經(jīng)常用到,而且根據(jù)需求可以采用不同的跳轉(zhuǎn)方式,比如提示操作信息后延時跳轉(zhuǎn)等, 本文總結(jié)了WEB開發(fā)中常見的幾種頁面跳轉(zhuǎn)方法。
PHP header()函數(shù)跳轉(zhuǎn)
PHP的header()函數(shù)非常強大,其中在頁面url跳轉(zhuǎn)方面也調(diào)用簡單,使用header()直接跳轉(zhuǎn)到指定url頁面,這時頁面跳轉(zhuǎn)是302重定向:
$url = "";
header( "Location: $url" );
我們有可能會遇到特殊的跳轉(zhuǎn)時,比如網(wǎng)站改版有個頁面地址要做301重定向,當(dāng)然你可以通過web配置rewrite來實現(xiàn),但現(xiàn)在我要告訴大家,可以使用php的header()函數(shù)做301跳轉(zhuǎn),代碼如下:
//301跳轉(zhuǎn)
header( "HTTP/1.1 301 Moved Permanently" );
header( "Location: $url" );
Meta設(shè)置跳轉(zhuǎn)
html中的meta信息里可以直接設(shè)置跳轉(zhuǎn),可以設(shè)置跳轉(zhuǎn)延遲時間和跳轉(zhuǎn)url,經(jīng)常應(yīng)用,比如支付完了告訴用戶支付成功并跳轉(zhuǎn)到訂單頁面,代碼非常簡單,就在中加上一句:
<meta http-equiv="refresh" content="5;url=http://www.jb51.net">
以上代碼表示在5秒鐘后頁面會自動跳轉(zhuǎn)到。
Javascript跳轉(zhuǎn)
Javascript跳轉(zhuǎn)也非常簡單,直接一句話:
<script>
window.location.href="";
</script>
注意,上面這段代碼直接跳轉(zhuǎn)后,在目標頁面地址中是獲取不到來路(referer,也叫來源)的,在實際項目中,遇到有客戶要求跳轉(zhuǎn)要帶來路(即目標網(wǎng)頁可以獲取到頁面從哪里跳轉(zhuǎn)來的),這時,我們可以用javascript模擬一次點擊,然后跳轉(zhuǎn)就滿足了客戶的需求。
<script>
//有來路
var aa = document.createElement("a");
aa.setAttribute("href","");
var bodys=document.getElementsByTagName("body")[0];
bodys.appendChild(aa);
aa.click();
</script>
當(dāng)然,實際開發(fā)中我們可以把后面兩種方式整合到PHP中去,便于適用各種跳轉(zhuǎn)需求。
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
更多信息請查看IT技術(shù)專欄