开源实例之Yaf
前言
Yaf (Yet Another Framework) 是我最喜欢的 PHP 开发框架。本站基于 Yaf 开发。
git 地址:https://github.com/laruence/yaf
pecl 地址:https://pecl.php.net/package/yaf
Yaf的介绍
Yaf is a PHP framework similar to zend framework, which is written in c and built as PHP extension.
Yaf 是一个C语言编写的、基于PHP扩展开发的,被誉为最快的PHP开发框架。Yaf 的作者是人称“亚一程”(亚洲第一程序员)的鸟哥(惠新宸)。
Yaf的优点
引用鸟哥的原话,Yaf主要有如下优点:
* 用C语言开发的PHP框架, 相比原生的PHP, 几乎不会带来额外的性能开销.
* 所有的框架类, 不需要编译, 在PHP启动的时候加载, 并常驻内存.
* 更短的内存周转周期, 提高内存利用率, 降低内存占用率.
* 灵巧的自动加载. 支持全局和局部两种加载规则, 方便类库共享.
* 高性能的视图引擎.
* 高度灵活可扩展的框架, 支持自定义视图引擎, 支持插件, 支持自定义路由等等.
* 内建多种路由, 可以兼容目前常见的各种路由协议.
* 强大而又高度灵活的配置文件支持. 并支持缓存配置文件, 避免复杂的配置结构带来的性能损失.
* 在框架本身,对危险的操作习惯做了禁止.
* 更快的执行速度, 更少的内存占用.
Yaf的流程图
Yaf提供了完善的API,并支持Bootstrap和插件机制。整体流程图如下:
Yaf的作者
Yaf的作者鸟哥(惠新宸)是PHP开发组核心成员、Zend顾问、PHP7及PHP8 JIT核心作者。
鸟哥的职业经历:
2008年—2012年,在百度公司担任PHP技术顾问职位
2012年—2015年,在新浪微博担任平台与大数据部总架构师职位
2015年—2022年,在贝壳找房技术副总裁、贝壳如视事业部总经理
2022年—至今,如视CEO
据传,在百度和新浪任职期间,Yaf有相当规模的应用。
此前,为了见鸟哥一面,我特地去上海参加了PHPCon 2018。
在与鸟哥简短的交流中,我表达了对Yaf的推崇,特别说了我的个人网站就是基于Yaf开发的。不过同时我也表达了疑惑,相较于Yaf的强大,其活跃度远不如其他知名框架。鸟哥坦言,他也很希望Yaf能得到更广泛的应用,不过相较于社区维护的框架,他个人的精力非常有限,在宣传上无心推动。
鸟哥的网站:https://www.laruence.com
Yaf的安装
Yaf 是被官方收录的扩展,所以最简单的就是通过 pecl 安装:
sudo pecl install yaf
Yaf的应用
本站基于 Yaf 的高性能 MVC 架构和路由实现,没有任何冗余三方代码,完成了干净、精致的网站开发。
后记
标签: 开源实例