php開發(fā)中的頁面跳轉(zhuǎn)方法總結(jié)
頁面跳轉(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ù)非常強(qiáng)大,其中在頁面url跳轉(zhuǎn)方面也調(diào)用簡單,使用header()直接跳轉(zhuǎn)到指定url頁面,這時頁面跳轉(zhuǎn)是302重定向:
$url = "http://www.dhdzp.com/"; header( "Location: $url" );
我們有可能會遇到特殊的跳轉(zhuǎn)時,比如網(wǎng)站改版有個頁面地址要做301重定向,當(dāng)然你可以通過web配置rewrite來實(shí)現(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)到訂單頁面,代碼非常簡單,就在<head>中加上一句:
<meta http-equiv="refresh" content="5;url=http://www.dhdzp.com">
以上代碼表示在5秒鐘后頁面會自動跳轉(zhuǎn)到http://www.dhdzp.com。
Javascript跳轉(zhuǎn)
Javascript跳轉(zhuǎn)也非常簡單,直接一句話:
<script> window.location.href="http://www.dhdzp.com"; </script>
注意,上面這段代碼直接跳轉(zhuǎn)后,在目標(biāo)頁面地址中是獲取不到來路(referer,也叫來源)的,在實(shí)際項(xiàng)目中,遇到有客戶要求跳轉(zhuǎn)要帶來路(即目標(biāo)網(wǎng)頁可以獲取到頁面從哪里跳轉(zhuǎn)來的),這時,我們可以用javascript模擬一次點(diǎn)擊,然后跳轉(zhuǎn)就滿足了客戶的需求。
<script>
//有來路
var aa = document.createElement("a");
aa.setAttribute("href","http://www.dhdzp.com");
var bodys=document.getElementsByTagName("body")[0];
bodys.appendChild(aa);
aa.click();
</script>
當(dāng)然,實(shí)際開發(fā)中我們可以把后面兩種方式整合到PHP中去,便于適用各種跳轉(zhuǎn)需求。
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
PHP通過get方法獲得form表單數(shù)據(jù)方法總結(jié)
這篇文章我們給大家介紹了PHP如何通過get的方式來得到獲取form表單數(shù)據(jù)的方法,有需要的朋友們參考下。2018-09-09
PHP框架Laravel插件Pagination實(shí)現(xiàn)自定義分頁
這篇文章主要為大家詳細(xì)介紹了PHP框架Laravel5.1插件Pagination實(shí)現(xiàn)自定義分頁的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05
PhpMyAdmin中無法導(dǎo)入sql文件的解決辦法
PhpMyAdmin中無法導(dǎo)入sql文件的解決辦法2010-01-01
Nginx服務(wù)器上安裝并配置PHPMyAdmin的教程
這篇文章主要介紹了Nginx服務(wù)器上安裝并配置PHPMyAdmin的教程,附帶一條PHPMyAdmin加載慢的解決方法:)需要的朋友可以參考下2015-08-08

