您好,登錄后才能下訂單哦!
這篇文章主要介紹“php header頭如何實現跳轉”,在日常操作中,相信很多人在php header頭如何實現跳轉問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”php header頭如何實現跳轉”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
php header實現跳轉的方法:1、使用“Header("Location:$url");”語法實現跳轉;2、使用if判斷式實現跳轉,其跳轉語句如“if($_COOKIE["u_type"]){ header('location:register.php'); } else{ setcookie('u_type','1','86400*360');”。
PHP Header用于頁面跳轉要注意的幾個問題總結
在PHP中用header("location:test.php")進行跳轉要注意以下幾點,有助于解決一些新手經常遇到的問題
1.header()函數
header()函數是PHP中進行頁面跳轉的一種十分簡單的方法。header()函數的主要功能是將HTTP協議標頭(header)輸出到瀏覽器。
header()函數的定義如下:
void header (string string [,bool replace [,int http_response_code]])
可選參數replace指明是替換前一條類似標頭還是添加一條相(www.jb51.net)同類型的標頭,默認為替換。
第二個可選參數http_response_code強制將HTTP相應代碼設為指定值。 header函數中Location類型的標頭是一種特殊的header調用,常用來實現頁面跳轉。注意:
1.location和“:”號間不能有空格,否則不會跳轉。
2.在用header前不能有任何的輸出。
3.header后的PHP代碼還會被執行。例如,將瀏覽器重定向到jb51.net
<?php
//重定向瀏覽器
header("Location: https://www.jb51.net");
//確保重定向后,后續代碼不會被執行
exit;
?>
1、php跳轉代碼一句話式:
<?php
$url = $_GET['url'];
Header("Location:$url");
?>
2、php跳轉代碼if判斷式:
代碼如下:
if($_COOKIE["u_type"]){ header('location:register.php'); } else{ setcookie('u_type','1','86400*360');//設置cookie長期有效 header('location:zc.html');
注:保存為zc.php,當用戶訪問zc.php時,判斷一個cookie是否存在,如果存(www.jb51.net)在就跳轉到register.php,如果不存在則創建cookie然后跳轉到zc.htmlfrom:https://www.jb51.net/phper/php-cy/62883.htm
URL重定向函數
// URL重定向
function redirect($url, $time=0, $msg=”) {
//多行URL地址支持
$url = str_replace(array(“n”, “r”), ”, $url);
if ( empty($msg) )
$msg = “系統將在{$time}秒之后自動跳轉到{$url}!”;
if (!headers_sent()) {
// redirect
if (0 === $time) {
header(‘Location: ‘ . $url);
} else {
header(“refresh:{$time};url={$url}”);
echo($msg);
}
exit();
} else {
$str = “<meta http-equiv='Refresh' content='{$time};URL={$url}'>”;
if ($time != 0)
$str .= $msg;
exit($str);
}
}
上面的不能返回404狀態,如果是頁面跳轉之后返回404狀態代碼我們可如下操作
function getref()
{
$url = @$_SERVER['HTTP_REFERER'];
if( !empty( $url ) )
{
if( !strstr($url ,'jb51.net' ) && !strstr($url,'jb51.net'))
{
@header("http/1.1 404 not found");
@header("status: 404 not found");
include("404.html");//跳轉到某一個頁面,推薦使用這種方法
exit();
}
}
else
{
@header("http/1.1 404 not found");
@header("status: 404 not found");
include("404.html");//跳轉到某一個頁面,推薦使用這種方法
exit();
}
}
如果要做301也差不多
<?php
$the_host = $_SERVER['HTTP_HOST'];
$request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';
if($the_host !== 'www.jb51.net')
{
//echo $_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
header('HTTP/1.1 301 Moved Permanently');
header('Location: https://www.jb51.net' . $_SERVER['PHP_SELF'] . $request_uri);
}
?>
到此,關于“php header頭如何實現跳轉”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。