本文實(shí)例分析了PHP頁面跳轉(zhuǎn)操作。分享給大家供大家參考,具體如下:
跳轉(zhuǎn)
header()為php函數(shù),向?yàn)g覽器發(fā)送指定命令
html:
<meta http-equiv="Refresh" content="3;url=other.php"/>
立即跳轉(zhuǎn):
header('Location:other.php'); //file_put_contents('bee.txt','execute'); die;
執(zhí)行header時(shí)候,并不是立即結(jié)束,而是會把頁面執(zhí)行完畢;在header前面不能有任何輸出,若有開啟輸出緩沖則不提示錯誤,php.ini->output_buffering = 4096|OFF
提示跳轉(zhuǎn):
header('Refresh:3,Url=other.php'); echo '3s 后跳轉(zhuǎn)'; //由于只是普通頁面展示,提示的樣式容易定制 die;
封裝的跳轉(zhuǎn)函數(shù):
/* *跳轉(zhuǎn) *@param $url 目標(biāo)地址 *@param $info 提示信息 *@param $sec 等待時(shí)間 *return void */ function jump($url,$info=null,$sec=3) { if(is_null($info)){ header("Location:$url"); }else{ // header("Refersh:$sec;URL=$url"); echo"<meta http-equiv=\"refresh\" content=".$sec.";URL=".$url.">"; echo $info; } die; }
header()函數(shù)是PHP中進(jìn)行頁面跳轉(zhuǎn)的一種十分簡單的方法。header()函數(shù)的主要功能是將HTTP協(xié)議標(biāo)頭(header)輸出到瀏覽器。
header()函數(shù)的定義如下:
void header (string string [,bool replace [,int http_response_code]])
可選參數(shù)replace指明是替換前一條類似標(biāo)頭還是添加一條相(theartemis.cn)同類型的標(biāo)頭,默認(rèn)為替換。
第二個可選參數(shù)http_response_code強(qiáng)制將HTTP相應(yīng)代碼設(shè)為指定值。 header函數(shù)中Location類型的標(biāo)頭是一種特殊的header調(diào)用,常用來實(shí)現(xiàn)頁面跳轉(zhuǎn)。注意:
是一種特殊的header調(diào)用,常用來實(shí)現(xiàn)頁面跳轉(zhuǎn)。注意:
1.location和“:”號間不能有空格,否則不會跳轉(zhuǎn)。
2.在用header前不能有任何的輸出。
3.header后的PHP代碼還會被執(zhí)行。例如,將瀏覽器重定向到365jz.com
<?php
//重定向?yàn)g覽器
header("Location: http://theartemis.cn");
//確保重定向后,后續(xù)代碼不會被執(zhí)行
exit;
?>
PHP 301跳轉(zhuǎn)的小代碼
<?php
$the_host = $_SERVER['HTTP_HOST'];
$request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';
if($the_host !== 'theartemis.cn')
{
//echo $_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.365jz.com' . $_SERVER['PHP_SELF'] . $request_uri);
}
?>
如對本文有疑問,請?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會為你解答!! 點(diǎn)擊進(jìn)入論壇