隨著當今移動設備的普及,上網已經比過去更加方便。針對Android智能手機,iPhone/iPad等移動終端,很多網站都相繼推出了針對電腦和這類手機等移動設備訪問的網頁。本文所述的實例代碼就可以實現根據這些移動設備終端而自動跳轉到適合它們浏覽的頁面。即判斷PC端或手機站智能端並跳轉。
完整的實例代碼如下:
<?php $agent = strtolower($_SERVER['HTTP_USER_AGENT']); $iphone = (strpos($agent, 'iphone')) ? true : false; $ipad = (strpos($agent, 'ipad')) ? true : false; $android = (strpos($agent, 'android')) ? true : false; if($iphone || $ipad) { echo "<script>window.location.href='pc.html'</script>";//這裡也可以是網址 } if($android){ echo "<script>window.location.href='andorid.html'</script>";//這裡也可以是網址 } ?>
這裡使用PHP中的內置函數HTTP_USER_AGENT獲取客戶端設備類型,再使用字符串處理函數對其提取,然後判斷是什麼設備,根據設備自動定位到適合的網頁或頁面發送給客戶端。
<meta http-equiv='refresh'content=15;URL='b.php'>
基本的HTML語言就可以做到
代碼加在哪裡都可以,這是HTML標簽。加哪裡浏覽器都可以識別的
Php本身沒有一個完全意義上的頁面跳轉函數,也許Header函數算一個,但是,它只能用於頁面的第一行。如果放在Php頁面的最後位置,除非前面的Php沒有輸出任何字符,否則,會報錯。以下是三種Php自動頁面跳轉的方法:
一:使用Header函數。
二:使用HTML固有標記。(不僅僅適用於Php,同樣適用於ASP,.Net,以及Jsp中)。
三:輸出javascript,利用Js代碼,達到Php頁面自動跳轉的目的。(也適用於Php以外的其他語言,不過相應語言代碼不同)。一、用HTTP頭信息(Header函數)
也就是用PHP的HEADER函數。PHP裡的HEADER函數的作用就是向浏覽器發出由HTTP協議規定的本來應該通過WEB服務器的控制指令,例如聲明返回信息的類型("Context-type: xxxx/xxxx"),頁面的屬性("No cache", "Expire")等等。
用HTTP頭信息使Php自動跳轉到另外一個頁面的方法如下:
<?php
$url = index.php
Header("HTTP/1.1 303 See Other");
Header("Location: $url");
exit;
?>
注意一下,"Localtion:"後面有一個空格。二、利用HTML標記(META中的REFRESH屬性)
用HTML標記,就是用META的REFRESH標記,舉例如下:
<?php $url = index.php;?>
<HTML>
<HEAD>
<META HTTP-EQUIV="REFRESH" CONTENT="10; URL=<? echo $url;?>>
</HEAD>
<BODY>
</BODY>
</HTML>
注:這裡的CONTENT="10 的意思是說10秒以後跳轉。三、用javascript腳本來實現
舉例如下:
<?php
$url=index.php;
echo "<!--<SCRIPT LANGUAGE="javascript">";
echo "location.href='$url'";
echo "</SCRIPT>-->";
?>
---------------------------------------------------------------------------------------------------------------
<?
//PHP自帶函數
Header("Location: www.php.com ");
?>
<?
//利用meta
echo "<meta http-equiv='refresh' content='0; ......余下全文>>