首頁 >後端開發 >PHP問題 >php怎麼禁止pc訪問

php怎麼禁止pc訪問

藏色散人
藏色散人原創
2022-11-08 10:31:461414瀏覽

php禁止pc存取的方法:1、建立一個php範例檔案;2、透過「public static function check_wap(){...}」驗證是否為手機存取;3、判斷手機傳送的客戶端標誌;4、從「HTTP_USER_AGENT」尋找手機瀏覽器的關鍵字。

php怎麼禁止pc訪問

本教學操作環境:windows7系統、PHP8.1版、Dell G3電腦。

php怎麼禁止pc存取?

php手機可以存取pc禁止存取

程式碼是網路上搬運的,(IOS手機)測試過了,安卓手機的話可以自己再測試一下,由於環境限制沒辦法發手機截圖圖片,就用電腦截貼提示圖吧! PHP後端的驗證方法,當是fales的時候則不是手機訪問,當返回true時則為手機訪問;

public static function check_wap()
{
// 如果有HTTP_X_WAP_PROFILE则一定是移动设备
if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) {
return true;
}
//如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
if (isset($_SERVER['HTTP_VIA'])) {
//找不到为flase,否则为true
if (stristr($_SERVER['HTTP_VIA'], "wap")) {
return true;
}
}
//协议法,因为有可能不准确,放到最后判断
if (isset($_SERVER['HTTP_ACCEPT'])) {
// 如果只支持wml并且不支持html那一定是移动设备
// 如果支持wml和html但是wml在html之前则是移动设备
if ((strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;vnd.wap.wml&#39;) !== false) && (strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;text/html&#39;) === false || (strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;vnd.wap.wml&#39;) < strpos($_SERVER[&#39;HTTP_ACCEPT&#39;], &#39;text/html&#39;)))) {
return true;
}
}
return false;
}

下面這段代碼是判斷瀏覽器F12調試場景的,如果需要從PC端瀏覽器訪問,就把這一段程式碼加到第三個判斷(協議法)的上方即可,由於程式碼過長就縮小之後上個截圖範例吧:

//判断手机发送的客户端标志,兼容性有待提高
if (isset($_SERVER[&#39;HTTP_USER_AGENT&#39;])) {
$clientkeywords = array (
&#39;nokia&#39;,
&#39;sony&#39;,
&#39;ericsson&#39;,
&#39;mot&#39;,
&#39;samsung&#39;,
&#39;htc&#39;,
&#39;sgh&#39;,
&#39;lg&#39;,
&#39;sharp&#39;,
&#39;sie-&#39;,
&#39;philips&#39;,
&#39;panasonic&#39;,
&#39;alcatel&#39;,
&#39;lenovo&#39;,
&#39;iphone&#39;,
&#39;ipod&#39;,
&#39;blackberry&#39;,
&#39;meizu&#39;,
&#39;android&#39;,
&#39;netfront&#39;,
&#39;symbian&#39;,
&#39;ucweb&#39;,
&#39;windowsce&#39;,
&#39;palm&#39;,
&#39;operamini&#39;,
&#39;operamobi&#39;,
&#39;openwave&#39;,
&#39;nexusone&#39;,
&#39;cldc&#39;,
&#39;midp&#39;,
&#39;wap&#39;,
&#39;mobile&#39;,
&#39;phone&#39;,
);
// 从HTTP_USER_AGENT中查找手机浏览器的关键字
if (preg_match("/(" . implode(&#39;|&#39;, $clientkeywords) . ")/i", strtolower($_SERVER[&#39;HTTP_USER_AGENT&#39;]))) {
return true;
}
}

推薦學習:《PHP影片教學

以上是php怎麼禁止pc訪問的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn