现在的项目中,生成二维码的功能很普遍,我们知道php有个phpqrcode类库可以帮助我们来轻松生成二维码,实际上我们可以联系到我们在之前的文章《yaf系列学习之三:Yaf类库Library的使用之redis》和《PHP使用phpqrcode生成二维码》,不妨自己动手在yaf框架中接入phpqrcode类库。
如果遇见了困难,没关系,我来继续教大家怎么……
yaf框架可以通过$this->getRequest()判断当前请求,$this->getRequest()中封装了判断请求类型、文件上传、获取当前请求url、获取cookie等操作。
下面举几个例子:
1.yaf判断当前是否为get请求:
if($this->getRequest()->isGet()) echo "当前是get请求";
2.yaf判断当前是否为post请求:
if($this->getRequest()->isPost()……
大部分情况下我们使用Yaf都是用来做Api接口,但是在Yaf控制器的Action中是默认会去加载视图模板的,所以当我们访问Action时经常会报“找不到xxxx模板”,那么怎么让程序不再去加载模板呢,有两种方式:
第一种,每个Action单独设置,在对应的Action的最后加上代码:
return false;
第二种,批量设置,即全部Action都会不加……
一般情况下我们会用到Yaf的Yaf_Route_Rewrite,Yaf_Route_Rewrite是一个强大的路由协议, 它能满足我们绝大部分的路由需求,举个例子:
在上例中, 我们匹配Url指定到一个文章详情页, 就像http://www.caizhichao.cn/article/771
可以发现我们传递了2个变量到路由协议Yaf_Route_Rewrite的构造函数其中,
第一个变量(‘……
上一篇我们讲到了接入数据库类,并实现了调用类对数据库做增删改查,这一篇我们来讲解下Yaf中model的使用。
在yaf的项目目录中我们能看到一个models文件夹,我们那些model文件就放在这里面,我们已创建一个article模型为例。
1、以创建一个article模型为例,在models中创建Article.php
2、在模型里面的写法就和我们普通的……
在上一篇中我们讲了redis类库的接入和使用,这一篇我们继续来讲解接入数据库。
接入数据库,我看到大部分都在推荐使用Medoo,那我们也用起来吧,本例我们将Db类放入library/Medoo。
1、到medoo官网https://medoo.lvtao.net/下载最新版本的Db类,将解压后src里面的Medoo.php放入/library/Medoo中
2、打开配置文件applica.i……
在项目中,往往需要封装一些,如redis和db,不同的产品需要用不同的库等等等,这就涉及到封装。
那么,我们一般的习惯是根据“命名空间\文件路径”来实例化类或者引入,比如:
$object = new Path\showPath();
这就代表着实例化了 Path 下的 showPath 类文件,当然在Yaf中也可以这样。
这一篇我们先以redis为例。
比如,我们想把Re……
Yaf模块的使用
1、了解Yaf的默认路由
默认的路由协议是Yaf_Route_Static,在request_uri中以 “/” 分割module、controller、action和参数的键和值
分割出来的第一段,有可能是module,也有可能是controller,如果该module存在,则认为是module,否则认为是默认模块Index的controller。
比如:在application/controllers/Us……
1、安装yaf
有三种安装方式:源码、PECL和安装操作系统提供的包。
我用了源码编译安装:
[root@localhost ~]# wget -c https://github.com/laruence/yaf/archive/yaf-3.0.5.tar.gz
[root@localhost ~]# tar xzvf yaf-3.0.5.tar.gz && cd yaf-3.0.5
[root@localhost ~]# phpize
[root@localhost ~]# ./configure……