当前位置:首页 » 编程语言 » php识别

php识别

发布时间: 2025-09-12 19:02:23

php怎样识别手机和电脑访问分别跳转到不同的页面

//为true时就是手机访问否则为PC
functionisMobile(){
//如果有HTTP_X_WAP_PROFILE则一定是移动设备
if(isset($_SERVER['HTTP_X_WAP_PROFILE']))
returntrue;

//如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
if(isset($_SERVER['HTTP_VIA'])){
//找不到为flase,否则为true
returnstristr($_SERVER['HTTP_VIA'],"wap")?true:false;
}
//脑残法,判断手机发送的客户端标志,兼容性有待提高
if(isset($_SERVER['HTTP_USER_AGENT'])){
$clientkeywords=array('nokia','sony','ericsson','mot','samsung','htc','sgh','lg','sharp','sie-','philips','panasonic','alcatel','lenovo','iphone','ipod','blackberry','meizu','android','netfront','symbian','ucweb','windowsce','palm','operamini','operamobi','openwave','nexusone','cldc','midp','wap','mobile');
//从HTTP_USER_AGENT中查找手机浏览器的关键字
if(preg_match("/(".implode('|',$clientkeywords).")/i",strtolower($_SERVER['HTTP_USER_AGENT'])))
returntrue;
}
//协议法,因为有可能不准确,放到最后判断
if(isset($_SERVER['HTTP_ACCEPT'])){
//如果只支持wml并且不支持html那一定是移动设备
//如果支持wml和html但是wml在html之前则是移动设备
if((strpos($_SERVER['HTTP_ACCEPT'],'vnd.wap.wml')!==false)&&(strpos($_SERVER['HTTP_ACCEPT'],'text/html')===false||(strpos($_SERVER['HTTP_ACCEPT'],'vnd.wap.wml')<strpos($_SERVER['HTTP_ACCEPT'],'text/html')))){
returntrue;
}
}
returnfalse;
}

⑵ 实现地址自动识别实例(PHP)







文章正文

址自动识别现在普遍,特别是用在快递填写地址,姓名,手机号码的时候,会把这些按照一定的规范填写后,点击自动识别后,会自动填写到各自的input。最近也简单的实现了这个功能,给后台添加用户的时候,自动识别地址。以下是效果图



具体问题具体姿凯分析!代码实现基于laravel完成。一个laravel完整的功能得具备这些:路由route,Model, View, Controller, 我这里用的有依赖注入服务容器等功能,当然,用到地址,你首先要有地址库。。。

下面来看看是如何实现的,这里我只贴出核心代码

UsersController控制器

在伏册握这里新建构造函数,实现容器的依赖注入 UsersRepository


接下来就新缺庆建地址识别的方法, $discernDel 接收的数据是从前端传过来的,后面再贴前端代码。 业务代码处理交给容器 UsersRepository 里的方法 getDiscern 处理


来看看 userRepository容器处理地址识别的各种业务代码

上面的方法处理手机,名称,和地址处理,地址处理有些繁杂,因为有时候填写的地址有不一样的,比如广西省,有些就填写广西壮族自治区,所以 getAddressArrar 方法处理地址匹配信息,根据自己的业务做调整,如下



前端html部分代码

基本上能看得懂的。jquery用到 getDiscern(); 方法,手机号码,姓名,地址等input这里就不一一列出了。大家根据下面的jquery都能想象到


jquery代码部分

ajax post后交给url: getDiscern 处理,这个就是上面controller的方法,success返回的数据后再追加到每个input里,最后再清除掉自动识别地址框的数据


整个过程简单,又清晰明了,以上就是我的代码,分享给大家,觉得哪个地方不对劲的,欢迎留言吐槽!



⑶ 请问php有办法识别一张图片色块分布吗比如找出最适合添加文字的地方

理论上肯定是可以的。不过这应该是一个很高深的东西。所以,我只能给你我很粗浅的方法:

一:写个函数,这个函数的主要功能是找出一张图片上的主要颜色(代码在最后面)
二:把一张图片有GD库分成9份(3*3)或更多份,然后用第一个函数来取得每一份小图的主要颜色。
三:比对这几份小图的颜色,看哪一份的颜色是你需要的。

如果你原意,你也可以切很多份,比如10000份(100*100),然后计算这10000个颜色的中你需要的颜色的分布,找出你需要的区域。

$i = imagecreatefromjpeg("image.jpg");

for ($x=0;$x<imagesx($i);$x++) {
for ($y=0;$y<imagesy($i);$y++) {
$rgb = imagecolorat($i,$x,$y);
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> & 0xFF;
$b = $rgb & 0xFF;

$rTotal += $r;
$gTotal += $g;
$bTotal += $b;
$total++;
}
}

$rAverage = round($rTotal/$total);
$gAverage = round($gTotal/$total);
$bAverage = round($bTotal/$total);

⑷ php关于textarea中换行、回车、空格的识别与处理

在使用 textarea 输入文字后,如何在提交至后台并返回页面时保持原有格式,包括换行、回车、空格等特殊字符?为了实现这一需求,需要了解浏览器的兼容性问题。

在 IE9 及以上版本、Firefox、Chrome 等主流浏览器中,换行符识别通常采用 “/” 格式;而在 IE7-8 中,识别换行符则需分两步:首先匹配 “\r”,接着匹配 “/”。

针对这一问题,有两种解决策略:

1. 替换特殊字符:将 “\r” 和 “\s” 分别替换为对应的字符串或特殊标记。这样替换后的文本能够被浏览器正确解析,从而显示为原样,包括换行、空格等格式。

具体实现方法如下:

例如,将 “\r” 替换为 “\n”,将 “\s” 替换为 “ ”。这使得文本在显示时能够保持原有的换行和空格。

2. 替换为 ASCII 码:将 “\r” 替换为 ASCII 码的 chr(10),将 “\s” 替换为 chr(32)。这种方式下的文本虽然在其他地方无法解析为特殊字符,但在网页中显示时则能以 ASCII 码的形式直接显示出换行、空格等效果。

实现步骤如下(以 JavaScript 为例):

将 “\r” 替换为 “\u000A”,将 “\s” 替换为 “\u0020”。这样替换后的文本以 HTML 格式显示时,不会被解析为特殊字符,而是直接以字符形式显示。

需要注意的几点:

1. 使用 `str.replace('aa','dd')` 方法替换字符串时,仅替换第一次出现的“aa”。若需替换全部出现的“aa”,应使用正则表达式写法:`str=str.replace(/aa/g,'dd');`。

2. 使用 `document.getElementById("ts").value.indexOf(" ")` 来获取字符串中空格出现的第一次位置,以此判断字符串是否包含空格。

热点内容
java同步的方法 发布:2025-09-12 20:55:29 浏览:443
翻倍指标源码 发布:2025-09-12 20:31:43 浏览:981
光遇安卓什么时候一周年 发布:2025-09-12 20:22:25 浏览:343
阿里云服务器找回密码 发布:2025-09-12 19:56:32 浏览:807
天籁的最低配有哪些配置 发布:2025-09-12 19:46:49 浏览:680
服务器脱管是什么意思 发布:2025-09-12 19:37:34 浏览:256
我的世界网易电脑版哪个服务器最火 发布:2025-09-12 19:32:25 浏览:260
漫画控缓存 发布:2025-09-12 19:24:10 浏览:62
android杀死应用 发布:2025-09-12 19:18:19 浏览:292
手机版python编程软件 发布:2025-09-12 19:02:26 浏览:759