郭全祯的博客

fastcgi_finish_request提高页面响应速度

当PHP运行在FastCGI模式时,PHP FPM提供了一个名为fastcgi_finish_request的方法.按照文档上的说法,此方法可以提高请求的处理速度,如果有些处理可以在页面生成完后再进行,就可以使用这个方法.听起来可能有些茫然,我们通过几个例子来说明一下: echo '例子:'; fastcgi_finish_request(); /* 响应完成, 关闭连接 */ ...

PHP array_map用法,遍历数组每个元素执行某函数

array_map用法:array_map("函数名",$arr);    //遍历(foreach)数组,数组的每个元素都执行"函数名"的函数。并返回$arr。例如:(数组)批量实体转义<?php //(数组)批量实体转义 function deepspecialchars($data){ if (empty($data)) { return $data;...

php yaf框架扩展实践五——数据层

从狭义角度上来理解数据层就是数据库,比较广义的理解来看数据库、远程数据、文件等都可以看做数据层。项目初期的时候一般单一的数据库就可以了,随着流量的增大就要对数据层做很多的改进,例如增加从库分散读压力,使用kv缓存增加系统性能,又或者使用分布式服务这样就会涉及到到远程数据调用。这么多东西该怎么整呢?项目好像越来越乱了。

php yaf框架扩展实践四——业务层

和常见的mvc框架不同,这里多了一个业务层用来封装系统业务。为什么要多一个层出来呢?以往的时候没有这个层,通常都把业务放在控制器层进行处理。在长期的开发app的数据接口中,发现控制器层做的事情实在是太多了,既要处理表单的验证、还要检测接口版本、还要处理业务。如果业务简单些还好,要是业务比较复杂,这个代码是惨不忍睹啊,维护起来也非常痛苦。

php yaf框架扩展实践三——表单

基本上所有的请求进来,只要有用户输入的数据都需要进行数据验证。如果数据就一两个可以直接取到数据,然后写上一些简单的校验。可是当数据字段变多的时候,验证变复杂的时候,不好好整理封装一下可就真的不行了。

php yaf框架扩展实践二——多模块

虽然多模块的配置可能会有一些争议,但是在项目前期能加快开发效率和部署效率,若项目发展起来有了更多的资源后可以考虑分拆模块。yaf也支持多模块的配置,先看下yaf如何配置多模块。

php yaf框架扩展实践一——配置篇

配置文件基本可以说是每个项目都会有,在配置文件中我们通常会配置数据库访问地址、redis连接、url地址等等。早年开发的时候经常碰到这样麻烦的问题:就是本地开发环境的配置和测试环境、生产环境的配置都不全一样,像数据库连接配置、url地址配置等,每次更新项目到测试环境、生产环境的时候都需要修改配置,真的是非常麻烦。

三方登录之微博登录

微博作为现在传播讯息的快捷途径之一,网站很有必要接入一下它的快捷登录! 逻辑是:1.根据微博开放平台接口得到微博帐号的openid。2.比对数据库判断用户。3.进行用户登录或者用户绑定。

三方登录之QQ登录

如果网站没有一个三方登录,可以毫不留情的说这个网站很失败。会流失很多用户资源。 既然如此,那就记录一个qq登录的代码吧! 逻辑是:1.根据QQ互联得到QQ的openid。2.比对数据库判断用户。3.进行用户登录或者用户绑定。