php获取手机
① php可以获取到手机号或者唯一标识吗
可以,用is_numeric 和strlen 函数来写,最后用正则来判断是否为手机号码,是手机号码就获取
用 is_numeric 判断是否为数字
用 strlen 判断长度是否为11位数或12位数,12位数判断第一位数是否为0,基本上打外省电话需要在号码前加0
$text='15812345678';
$search='/^(1(([35][0-9])|(47)|[8][0126789]))d{8}$/';
if(preg_match($search,$text)){
echo'手机完全符合';
}else{
echo'手机格式不符合';
}
② php怎么获取手机客户端ip
function getIP()
{
$ip=getenv('REMOTE_ADDR');
$ip_ = getenv('谨弊HTTP_X_FORWARDED_FOR');
if (($ip_ != "") && ($ip_ != "unknown"))
{
$ip=$ip_;
}
return $ip;
}
这段代码是获取手机端祥袭族ip的,测试过是wifi模式禅扰和移动2G卡经常性获取不到ip
③ php 获取手机信息(浏览器版本,ip,手机号,手机系统版本,手机类型,手机型号,等等)
手机的信息都在$_SESSION中,但手机号没办法获取。
④ PHP现在还能实现获取访客手机号吗
获取手机号,核和就是通过稿棚用户输入或app识别,然后发送到服务器,跟什么语言没关系
传手机号键氏则和传其他参数没有区别
⑤ php怎么获取手机来自哪个国家
通过读取手机型号。
每一部手机都有自己的型号,根据型号就可以判断手机来自哪个国家。
php语言主要用于Web开发,应用环境相对简单,底层操作较少涉及,所以语法简单,概念比较少,很容易学习和使用。
php提供了许多有用的内置函数,为Web开发提供了很多便利,使代码编写得更好。
⑥ php能不能读取手机的型号
网上现在有三种观点, 一种是基于浏览器发送的 User-Agent, 但明显这种方法是行不通的, 虽然有人列出了大多数的手机发送的User-Agent, 但依然会有很多手机无法识别, 甚至有些手机浏览器不发送User-Agent, 而且也不能保证以后就不会出新牌子.
下面是一个php的例子, 看过之后你就会知道有多么不可靠.
1. function is_wap(){
2. $ua = strtolower($_SERVER['HTTP_USER_AGENT']);
3. $uachar = "/(nokia|sony|ericsson|mot|samsung|sgh|lg|sie|philips|panasonic|alcatel|lenovo|cldc|midp|wap|mobile)/i";
4. if(($ua == '' || preg_match($uachar, $ua))&& !strpos(strtolower($_SERVER['REQUEST_URI']),'wap')){
5. return true;
6. }else{
7. return false;
8. }
9. }
另外一种是判断HTTP_ACCEPT, 这种应该相对可靠一点, 不过HTTP_ACCEPT是非常复杂的, 如果一般的不支持html的浏览器还好说, 你只要判断浏览器支持wml并且不支持html就可以, 但如果浏览器同时支持wml和html那就难办了, 低端手机可能会将wml放到html的前面, 但是很多高端手机或者智能手机对html的支持很好, 所以html也会出现在wml前面.
这是黑莓手机发送的HTTP_ACCEPT
application/vnd.rim.html,
text/html,
application/vnd.wap.xhtml+xml,
text/vnd.sun.j2me.app-descriptor,
image/vnd.rim.png,image/jpeg,
application/x-vnd.rim.pme.b,
application/vnd.rim.ucs,
image/gif;anim=1,
application/vnd.rim.jscriptc;v=0-8-8,
application/x-javascript,
application/vnd.rim.css;v=1,
text/css;media=handheld,
application/vnd.wap.wmlc;q=0.9,
application/vnd.wap.wmlscriptc;q=0.7,
text/vnd.wap.wml;q=0.7,
*/*;q=0.5
夸张吧? 不过的确是很标准的, 开发人员可以根据这个得到很多信息, 但很多手机都没这么标准的, 如果你查看IE或者FF的HTTP_ACCEPT你会发现它很短.
text/html,
application/xhtml+xml,
application/xml;q=0.9,
*/*;q=0.8
同样, 给你个php的例子.
if (isset($_SERVER['HTTP_ACCEPT']) &&
(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'))
)) {//手机访问
readfile('index.wml');
} else readfile('index.htm');
原理:如果浏览器支持WML、而且[不支持HTML]或[WML优先于HTML],则判定为手机。但实际上这个原理是不正确的.
还有一种是说判断网关或者IP什么的, 但我个人认为这个很不可靠, 手机的联网方式很多, 比如我开发的时候就是用模拟器的.这个应该不用什么例子了, REMOTE_ADDR 就足够了
⑦ php如何获取本地手机号
代码:
<?php
functioninquiry_number_infor($phonenumber)
/*
*传入手机号码,通过API的到xml格式数据,对xml进一步解析,最后返回相应的号码信息的数组。
*
*@paramstring$phonenumber
*
*@returnarray
*/
{
$url="http://api.showji.com/Locating/default.aspx?m=$phonenumber&output=xml&callback=querycallback";
$lines_array=file($url);
$lines_string=implode('',$lines_array);
echohtmlspecialchars($lines_string);
echo"</br>";
$p=xml_parser_create();
xml_parse_into_struct($p,$lines_string,$vals,$index);
xml_parser_free($p);
$return_arr=array();
foreach($valsas$val)
{
$key=$val["tag"];
if($key!="QUERYRESPONSE")
{
$value=$val["value"];
$return_arr[$key]=$value;
}
if($key==="QUERYRESULT"&&$value==="False")break;
}
return$return_arr;
}
$ret=inquiry_number_infor("11210982674");
//$ret=inquiry_number_infor("15210982674");
print_r($ret);
⑧ PHP如何获取网页的手机号码并存入手机通讯录,ios和android分别阐述
如果你想让手机直接通过自带的浏览器访问页面来完成这个效果,那是实现不了的
系统自带的浏览器没有访问手机系统接口的权限
要实现这个功能,只能做一个app来模拟
安卓有一个组件叫webbrowser,通过这个组件访问你的页面,拿到数据库调用安卓系统api可以达到目的
苹果的虽然没做过开发,但估计也有类似的组件
⑨ 微信小程序 php解密获取手机号 + -41003错误
此处需要注意的是,很拿隐察巧多人解密的时候消没厅会报-41003
这是因为传过来的encryptedData的值有问题,
一定要在小程序端使用encodeURIComponent()进行数据编码后再传,
不然+号会变成空格,然后一直解密不成功......
⑩ php怎么获取手机客户端ip
php获取客户端ip地址方法总结
用php获取客户端ip地址的方法,具体代码如下:
?php
$iipp=$_server["remote_addr"];
echo
$iipp;
?
///////////////////////////////////////////////
?php
$user_ip
=
($_server["http_via"])
?
$_server["http_x_forwarded_for"]
:
$_server["remote_addr"];
$user_ip
=
($user_ip)
?
$user_ip
:
$_server["remote_addr"];
echo
$user_ip;
?
///////////////////////////////////////////////
?php
function
get_real_ip(){
$ip=false;
if(!empty($_server["http_client_ip"])){
$ip
=
$_server["http_client_ip"];
}
if
(!empty($_server['http_x_forwarded_for']))
{
$ips
=
explode
(",
",
$_server['http_x_forwarded_for']);
if
($ip)
{
array_unshift($ips,
$ip);
$ip
=
false;
}
for
($i
=
0;
$i
<
count($ips);
$i++)
{
if
(!eregi
("^(10|172.16|192.168).",
$ips[$i]))
{
$ip
=
$ips[$i];
break;
}
}
}
return
($ip
?
$ip
:
$_server['remote_addr']);
}
echo
get_real_ip();
?
///////////////////////////////////////////////
php获取ip的算法:
?php
if
($http_server_vars["http_x_forwarded_for"])
{
$ip
=
$http_server_vars["http_x_forwarded_for"];
}
elseif
($http_server_vars["http_client_ip"])
{
$ip
=
$http_server_vars["http_client_ip"];
}
elseif
($http_server_vars["remote_addr"])
{
$ip
=
$http_server_vars["remote_addr"];
}
elseif
(getenv("http_x_forwarded_for"))
{
$ip
=
getenv("http_x_forwarded_for");
}
elseif
(getenv("http_client_ip"))
{
$ip
=
getenv("http_client_ip");
}
elseif
(getenv("remote_addr"))
{
$ip
=
getenv("remote_addr");
}
else
{
$ip
=
"unknown";
}
echo
"你的ip:".$ip
;
?
///////////////////////////////////////////////
?php
if(getenv('http_client_ip'))
{
$onlineip
=
getenv('http_client_ip');
}
elseif(getenv('http_x_forwarded_for'))
{
$onlineip
=
getenv('http_x_forwarded_for');
}
elseif(getenv('remote_addr'))
{
$onlineip
=
getenv('remote_addr');
}
else
{
$onlineip
=
$http_server_vars['remote_addr'];
}
echo
$onlineip;
?