本文目录一览:
- 1、PHP 如何读取手机端的缓存
- 2、PHP判断是手机端还是PC端 PHP判断是否是微信浏览器
- 3、用PHP写手机端APP数据接口和PC端数据接口有什么不一样?
- 4、有哪些适合微信的基于PHP的手机端系统
- 5、js或php能否判断移动端的网络类型?
- 6、php可以开发手机app吗
PHP 如何读取手机端的缓存
1、普遍缓存技术:
数据缓存:这里所说的数据缓存是指数据库查询PHP缓存机制,每次访问页面的时候,都会先检测相应的缓存数据是否存在,如果不存在,就连接数据库,得到数据,并把查询结果序列化后保存到文件中,以后同样的查询结果就直接从缓存表或文件中获得。
用的最广的例子看Discuz的搜索功能,把结果ID缓存到一个表中,下次搜索相同关键字时先搜索缓存表。
举个常用的方法,多表关联的时候,把附表中的内容生成数组保存到主表的一个字段中,需要的时候数组分解一下,这样的好处是只读一个表,坏处就是两个数据同步会多不少步骤,数据库永远是瓶颈,用硬盘换速度,是这个的关键点。-php手机端类
2、 页面缓存:
每次访问页面的时候,都会先检测相应的缓存页面文件是否存在,如果不存在,就连接数据库,得到数据,显示页面并同时生成缓存页面文件,这样下次访问的时候页面文件就发挥作用了。(模板引擎和网上常见的一些PHP缓存机制类通常有此功能)-php手机端类
3、 时间触发缓存:
检查文件是否存在并且时间戳小于设置的过期时间,如果文件修改的时间戳比当前时间戳减去过期时间戳大,那么就用缓存,否则更新缓存。
4、 内容触发缓存:
当插入数据或更新数据时,强制更新PHP缓存机制。
5、 静态缓存:
这里所说的静态缓存是指静态化,直接生成HTML或XML等文本文件,有更新的时候重生成一次,适合于不太变化的页面,这就不说了。
以上内容是代码级的解决方案,我直接CP别的框架,也懒得改,内容都差不多,很容易就做到,而且会几种方式一起用,但下面的内容是服务器端的缓存方案,非代码级的,要有多方的合作才能做到
6、 内存缓存:
Memcached是高性能的,分布式的内存对象PHP缓存机制系统,用于在动态应用中减少数据库负载,提升访问速度。
7、 php的缓冲器:
有eaccelerator, apc, phpa,xcache,这个这个就不说了吧,搜索一堆一堆的,自己看啦,知道有这玩意就OK
8、 MYSQL缓存:
这也算非代码级的,经典的数据库就是用的这种方式,看下面的运行时间,0.09xxx之类的
9、 基于反向代理的Web缓存:
如Nginx,SQUID,mod_proxy(apache2以上又分为mod_proxy和mod_cache)
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'])))-php手机端类
{
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'))))-php手机端类
{
return true;
}
}
return false;
}
用PHP写手机端APP数据接口和PC端数据接口有什么不一样?
都一样的 只是由于app不是浏览器不能正常使用cookie所以不支持session认证 在做app接口的时候一般都会使用自己定义的token来认证 其他的都是一致的
有哪些适合微信的基于PHP的手机端系统
如需下载第三方应用软件(好玩的游戏、常用工具应用、系统辅助工具等),建议可以通过自带的应用商店或手机论坛等搜索目前较为热门的软件。
1、若您的手机自带应用商店,可以按照如下方式查找:应用程序-应用商店-点击热门推荐”可以查看到当前较为热门的软件/游戏。您也可以按照分类,根据软件类型选择自己喜欢的软件
2、 通过手机浏览器搜索需要的软件下载安装(若是自带的浏览器,下载的安装包保存在我的文件-Download文件夹中)。
3、通过第三方助手类软件下载安装需要的程序。
4、通过电脑下载APK格式的安装包,然后传输到手机中安装。
js或php能否判断移动端的网络类型?
PHP的$_SERVER['HTTP_USER_AGENT']只能根据HTTP的header来判断用户的访问是来自哪些设备类型(例如:PC或者手机[包括手机品牌]等),但是对于网络类型,如果是手机访问,可以通过$_SERVER['HTTP_VIA']得到手机的访问网关-php手机端类
php可以开发手机app吗
因为PHP是脚本语言,主要用于服务端的开发,是负责完成 B/S架构 或 C/S架构 的S部分,但是PHP可不仅仅只能在互联网站上发展,一个PHP for Android(PFA)站点表示他们将可以发布编程模型、工具盒文档让PHP在Android上实现应用。-php手机端类
怎么利用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手机端类
利用PHP框架开发手机APP需要考虑两种可能:
第一:如果需要即时通讯,也就是需要手机客户端与服务端保持TCP长连接,服务端需要向客户端推送数据的时候可以随时通过这个长连接发送数据给客户端,这样便能做到客户端与服务端及时通讯甚至客户端与客户端及时通讯。做到这需要PHP能维持很多客户端连接,并且需要多进程支持,支持自己的通讯协议。这样的应用传统的nginx+php-fpm + 传统的php框架是做不到的。如果是长连接即时通讯类的服务器框架推荐一看下workerman,它是就是一个php的socket服务器框架,非常适合做手机后台服务器框架。-php手机端类
第二:如果不需要即时通讯的话,可以考虑直接走http协议,用nginx+php-fpm搭建一个webserver就好了,php框架可以采用thinkphp、yii等等,客户端需要与服务器通讯的时候向服务端get/post一个请求就好。-php手机端类