概要说起 PHP 框架,很多人的印象都停留在一个由 PHP 实现的基于 MVC 的各种功能组合的代码包。
极少有人知道 C 语言也能写 PHP 框架,并且速度比 PHP 写的框架快上 10 倍以上。
Yaf,全称 Yet Another Framework,是一个高性能的 PHP 开发框架,采用 PHP 扩展实现( c 语言)。
只实现了 MVC 最核心部分的功能:路由、MVC。
Yaf 内核够精简稳定,所以,几乎不会遇到运行上的问题,风险可控,性能优异。
因为简单,所以,你需要实现 DB 的封闭、Session 的扩展等操作。
身为 PHP 程序员,对于由亚洲第一程序员:鸟哥,编写的框架应该不陌生,那么它有什么优点呢?
C 语言开发的 PHP 框架,相比原生的 PHP,几乎不会带来额外的性能开销。
所有的框架类,不需要编译,在 PHP 启动的时候加载,并常驻内存。
更短的内存周转周期,提高内存利用率,降低内存占用率。
灵巧的自动加载,支持全局和局部两种加载规则,方便类库共享。
高性能的视图引擎。
高度灵活可扩展的框架,支持自定义视图引擎,支持插件,支持自定义路由等等。
内建多种路由,可以兼容目前常见的各种路由协议。
强大而又高度灵活的配置文件支持,并支持缓存配置文件,避免复杂的配置结构带来的性能损失。
在框架本身,对危险的操作习惯做了禁止。
更快的执行速度,更少的内存占用。
Balabala。。。。。都不是我说的。。。。。。O(∩_∩)O哈哈哈。。。。。。。
详解
1、搜索 brew 是否已更新 php 对应版本的 yaf 源,如果没有就手动编译安装brew search php71-yaf
2、下载 yaf 扩展包wget http://pecl.php.net/get/yaf-3.0.7.tgz
3、解压tar -zxvf yaf-3.0.7.tgz
4、进入目录cd yaf-3.0.7
5、生成扩展编译信息phpize
此处可能会报错,具体报错信息可通过百度搜索解决。
6、指定配置文件./configure --with-php-config=/usr/local/opt/php@7.1/bin/php-config
7、编译 & 安装make && make install
8、brew 的安装会把配置默认写在 php.ini 统计的 conf.d 目录下,推荐也写在这里,以后方便查找安装了哪些扩展。
安装完成后,在 conf.d 下创建 ext-yaf.inivi ext-yaf.ini
[yaf]
extension = "/usr/local/Cellar/php@7.1/7.1.26/pecl/20160303/yaf.so"
(上边的路径根据自己编译扩展后返回的实际路径填写)
// 是否开启命名空间,根据自己情况设置即可,1 为开启,0 为关闭
yaf.use_namespace = 1
// 设置默认情况下 yaf 读取的环境配置
yaf.environ = 'product'
// 是否缓存项目配置
yaf.cache_config = 0
// 开启后缀。为 1 时,类名将以 XxxModel.php、XxxController.php 模式加载
yaf.name_suffix = 1
//路径信息中的目录部分是否转换成小写
yaf.lowcase_path = 1
9、保存,重新启动 php-fpm,通过 phpinfo 查看是否安装成功。