首页  >  文章  >  后端开发  >  php怎么禁止pc访问

php怎么禁止pc访问

藏色散人
藏色散人原创
2022-11-08 10:31:461406浏览

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