【Yaf】Yaf的环境安装遇到的问题以及解决方案
最后更新于:2022-04-01 09:55:50
【本文原创,禁止转载】
###一、前言
用了半年的Yii框架,发现封装的类太多太多,虽然使用起来**效率很高**但是**学习成本比较高**并且**自由度不高**,本着学习的态度,想试试新的框架尝尝鲜。
因为一直在用鸟哥写的yar做接口封装,所以也就想试试他用C写的PHP框架
###二、下载
Yaf其实算是PHP官方的一个扩展,我们可以直接在PHP官网下载。 http://pecl.php.net/package/yaf
也可以在github上找到。 https://github.com/laruence/php-yaf
还有,Yaf的官网,虽然说明文档一直木有更新。。。 http://www.yafdev.com/
###三、安装
其实这就是一个安装PHP扩展的过程。
Yaf和Yii的区别就是Yaf把框架写成了PHP扩展,能更深一层的执行,这样也就是他为什么这么快的原因。
**1、下载**
~~~
wget http://pecl.php.net/get/yaf-2.3.2.tgz #直接从PHP官网下载正式版本会比较稳定
~~~
**2、解压**
~~~
tar zxvf yaf-2.3* #好吧我偷懒了。。
cd yaf*
~~~
**3、预处理**
~~~
phpize #这里我还没完全搞懂所以就没有加参数
~~~
**4、make**
~~~
make #提示大家最好用 make && make test
~~~
### 1)问题
然后就在make这里出现了问题,没有,博主每次装点东西总会出现问题,这也就是写博客记录的理由哈~
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-03-17_56ea1b27f2055.jpg)
很明显没有 php_pcre.h 这个文件
### 2)解决
当然粗线了问题肯定就能解决,然后博主就去问鸟哥了QAQ【下次一定自己先找方法QAQ
结果就是需要“安装pcre dev包”
开始我是这样
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-03-17_56ea1b2811791.jpg)
显然执行之后没有起作用啦!
然后急中生智。。。。
~~~
yum install pcre*dev* #直接去搜惹。。。
~~~
结果!
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-03-17_56ea1b282af61.jpg)
装上惹!!!
### 3)继续make
经过上面的问题解决,下面当然木有问题了!
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-03-17_56ea1b283d37c.jpg)
**5、修改php.ini**
给你的php.ini添加一行让他能加载这个扩展
~~~
extension=yaf.so # 加上扩展!萌萌哒!!!
~~~
**6、重启httpd**
~~~
service httpd restart
~~~
**7、查看phpinfo()**
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-03-17_56ea1b284e6e4.jpg)
至此,PHP的Yaf扩展安装完成!
###四、框架目录结构
这里要提一下,因为Yaf的官方网站 http://yaf.laruence.com/manual/index.html 的文档的更新时间是**2012**年,所以一定要小心。博主按照这个配置,果然不行!
然后,博主就机智的想到了社区,毕竟人多力量的大,然后。。。
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-03-17_56ea1b2862d3b.jpg)
。。。
这是排名最靠前的论坛好咩?这样的回帖数是闹哪样啊?2012年是怎么回事啊?
然后博主又机智的找到了置顶的QQ群!
然后博主又机智的找到了群共享里的文件!
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-03-17_56ea1b288612b.jpg)
然后。。。
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-03-17_56ea1b28999cc.jpg)
成功了有木有!!!
心里很是激动啊!!!
所以最新的目录结构是这样的
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-03-17_56ea1b28a9b9f.jpg)
###五、总结
1)感谢鸟哥
2)人多力量大,没有文档还有QQ群
3)遇到足够多的错误才能进步
4)自己认为这样的方式【二次元语言】写技术博客挺萌的~
###六、参考资料
1)[Yaf官网](http://www.yafdev.com/) http://www.yafdev.com/
2)[github项目](https://github.com/laruence/php-yaf) https://github.com/laruence/php-yaf
3)[PHP官方扩展下载](http://pecl.php.net/package/yaf) http://pecl.php.net/package/yaf
4)[PHP官方说明函数参考](http://php.net/manual/zh/book.yaf.php) http://php.net/manual/zh/book.yaf.php
5)[鸟哥博客](http://www.laruence.com/2012/07/06/2649.html) http://www.laruence.com/2012/07/06/2649.html
6)Yaf的QQ群 5134185