当前位置:首页 » 编程语言 » php手机客户端

php手机客户端

发布时间: 2022-04-24 01:38:50

⑴ ios,安卓,h5,php哪个比较好

不是一个类型的没办法比较,IOS,安卓主要开发手机客户端的程序,H5主要用来开发前端程序,基于浏览器的开发,近几年H5非常火,而且也见过不少H5+CSS3+JS封装的手机APP就是执行效率没有前面2个高,PHP主要开发服务端的程序,一般学习PHP,都会学习H5+CSS3+JS,不会只学一样,如果从工资角度讲,IOS和安卓总的来讲会高一点,现在移动互联刚火的时候,也很缺这样的开发人员

⑵ PHP判断是手机端还是PC端 PHP判断是否是微信浏览器

判断是否是微信浏览器:

function is_weixin(){
if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ) {
return true;//是微信浏览器。返回true
}
return false;//不是微信浏览器。返回false
}

判断手机或pc
function isMobile()
{
// 如果有HTTP_X_WAP_PROFILE则一定是移动设备
if (isset ($_SERVER['HTTP_X_WAP_PROFILE']))
{
return true;
}
// 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
if (isset ($_SERVER['HTTP_VIA']))
{
// 找不到为flase,否则为true
return stristr($_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'])))
{
return true;
}
}
// 协议法,因为有可能不准确,放到最后判断
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'))))
{
return true;
}
}
return false;
}

⑶ PHP程序网站,二维码自动识别手机客户端安卓/苹果

在网站程序中判断浏览器类型信息,如果操作系统是iOS的,下载苹果客户端,如果操作系统是安卓的,下载安卓程序。

⑷ php判断客户端是pc还是手机

网上现在有三种观点, 一种是基于浏览器发送的 User-Agent, 但明显这种方法是行不通的, 虽然有人列出了大多数的手机发送的User-Agent, 但依然会有很多手机无法识别, 甚至有些手机浏览器不发送User-Agent, 而且也不能保证以后就不会出新牌子. 下面是一个php的例子, 看过之后你就会知道有多么不可靠. 1. function is_wap(){ 2. $ua = strtolower($_SERVER['HTTP_USER_AGENT']); 3. $uachar = "/(dpwapmobile)/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如何判断客户端是pc还是手机

//判断是否是手机
functionis_mobile()
{
$agent=strtolower($_SERVER['HTTP_USER_AGENT']);
$is_pc=(strpos($agent,'windowsnt'))?true:false;
$is_mac=(strpos($agent,'macos'))?true:false;
$is_iphone=(strpos($agent,'iphone'))?true:false;
$is_android=(strpos($agent,'android'))?true:false;
$is_ipad=(strpos($agent,'ipad'))?true:false;


if($is_pc){
returnfalse;
}

if($is_mac){
returntrue;
}

if($is_iphone){
returntrue;
}

if($is_android){
returntrue;
}

if($is_ipad){
returntrue;
}
}

⑹ PHP能做手机客户端吗

能制作自动适应手机端浏览器的网页
但不能制作手机客户端app应用程序!

⑺ php 获取访问客户端是pc端还是手机端

都有可能。我用手机浏览器访问你的web应用,获取到我的就是移动端的,我用电脑访问,那获取到的自然就是pc端的。所以像ecshop这些开源的php产品,他有个程序判断客户端访问是移动端还是pc端,然后路由到不同的处理程序。

⑻ 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;
?

⑼ php可以开发手机app吗

因为PHP是脚本语言,主要用于服务端的开发,是负责完成 B/S架构 或 C/S架构 的S部分,但是PHP可不仅仅只能在互联网站上发展,一个PHP for Android(PFA)站点表示他们将可以发布编程模型、工具盒文档让PHP在Android上实现应用。

怎么利用PHP框架语言开发手机APP?

第一:和 WEB 开发一样,首先需要一些相关的参数,这些参数,都会由客户端传过来,也许是 GET 也许是 POST,这个需要开发团队相互之间约定好,或者制定统一规范。

第二:有了参数,根据应用需求,完成数据处理,例如:任务进度更新、APP内购、一局游戏结束数据提交等等

第三:数据逻辑处理完之后,返回客户端所需要用到的相关数据,例如:任务状态、内购结果、玩家信息等等

P.S:数据怎么返给客户端?直接输出的形式,如:JSON、XML、TEXT 等等。

第四:客户端获取到你返回的数据后,在客户端本地和用户进行交互!

php不能编写 app应用程序,主要用于B/S结构(Browser/Server,浏览器/服务器模式)开发使用。但是php可以作为服务器与app应用交换数据服务端API.

学习APP现在流行的有三种手机平台,android、IOS,windows。他们都各有各自的编程语言,具体可以在网络搜索下各自平台制作学习。

移动后台都是 PHP、Python,Java都重,更别说C++了。看你用什么协议了,http ,tcp/ip。nodejs 可以把路由,form表单验证写成c++的模块, 主要是提供接口给移动端APP调用,可以从成本、服务器资源的占用、开发效率、运行效率,后台复杂逻辑处理的能力 等说一下。目前我就知道的有jsp,asp,php。

利用PHP框架开发手机APP需要考虑两种可能:

第一:如果需要即时通讯,也就是需要手机客户端与服务端保持TCP长连接,服务端需要向客户端推送数据的时候可以随时通过这个长连接发送数据给客户端,这样便能做到客户端与服务端及时通讯甚至客户端与客户端及时通讯。做到这需要PHP能维持很多客户端连接,并且需要多进程支持,支持自己的通讯协议。这样的应用传统的nginx+php-fpm + 传统的php框架是做不到的。如果是长连接即时通讯类的服务器框架推荐一看下workerman,它是就是一个php的socket服务器框架,非常适合做手机后台服务器框架。

第二:如果不需要即时通讯的话,可以考虑直接走http协议,用nginx+php-fpm搭建一个webserver就好了,php框架可以采用thinkphp、yii等等,客户端需要与服务器通讯的时候向服务端get/post一个请求就好。

⑽ PHP判断客户端是PCweb端还是移动手机端方法

<?php
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;
}
?>

热点内容
hbase与传统数据库 发布:2025-05-17 15:28:56 浏览:168
看我QQ密码多少 发布:2025-05-17 15:27:12 浏览:264
我配置很高了ae为什么卡 发布:2025-05-17 14:54:50 浏览:169
python数据分析实战pdf 发布:2025-05-17 14:49:42 浏览:952
海澜之家广告脚本 发布:2025-05-17 13:56:06 浏览:34
手文件夹恢复 发布:2025-05-17 13:53:32 浏览:997
linux怎么看进程 发布:2025-05-17 13:53:30 浏览:307
thinkphp字段缓存 发布:2025-05-17 13:52:01 浏览:579
山灵app安卓版如何设置 发布:2025-05-17 13:51:49 浏览:392
帆布压缩袋 发布:2025-05-17 13:26:27 浏览:462