Yaf 框架学习

Yaf 是什么

Yaf,全称 Yet Another Framework,是一个C语言编写的、基于PHP扩展开发的PHP框架。php

相比于通常的PHP框架,它更快,快到被誉为最快的PHP开发框架。web

它提供了Bootstrap、路由、分发、视图、插件功能。数据库

注:bootstrap

百度的odp框架,以及咱们公司的PIE框架都是基于yaf开发的。

Yaf 的优势

  • 用C语言开发的PHP框架, 相比原生的PHP, 几乎不会带来额外的性能开销.
  • 全部的框架类, 不须要编译, 在PHP启动的时候加载, 并常驻内存.
  • 更短的内存周转周期, 提升内存利用率, 下降内存占用率.
  • 灵巧的自动加载. 支持全局和局部两种加载规则, 方便类库共享.
  • 高性能的视图引擎.
  • 高度灵活可扩展的框架, 支持自定义视图引擎, 支持插件, 支持自定义路由等等.
  • 内建多种路由, 能够兼容目前常见的各类路由协议.
  • 强大而又高度灵活的配置文件支持. 并支持缓存配置文件, 避免复杂的配置结构带来的性能损失.
  • 在框架自己,对危险的操做习惯作了禁止.
  • 更快的执行速度, 更少的内存占用.

以上内容引用鸟哥的官方介绍,固然,Yaf不是一个Full-Stack的web框架,它没有对数据库操做的封装,更不用说ORM;不少人认为这是Yaf的不足,但我认为这又是Yaf的优势,这表明着一种精神,就是追求简单,追求高效,追求”简单可依赖“, 因此Yaf专一于实现最核心的功能,提供最稳定的实现。缓存

尽管Yaf的功能有限,但Yaf是可扩展的!它提供的插件机制,能够和其它类库整合在一块儿。Yaf很是适合基于Yaf再扩展一套适合本身的业务层框架。总之Yaf很是适合互联网产品的开发。app

流程图

Yaf提供了完善的API, 并支持Bootstrap和插件机制. 总体流程图以下:框架

使用 Bootstrap

Bootstrap, 也叫作引导程序. 它是Yaf提供的一个全局配置的入口, 在Bootstrap中, 你能够作不少全局自定义的工做.性能

注:url

在PIE框架中webroot目录下各个模块对应的文件里的index.php起初始化做用,部分替代了yaf中Bootstrap文件的做用:

index.php文件:spa

$objApplication = Sf\Init::init();      
$objResponse = $objApplication->bootstrap()->run();

路由协议

PIE 框架中的路由协议采用默认协议,由请求url中指定要路由的app、controller、action名称。

本文做者: 荒古
本文连接: https://haxianhe.com/2019/07/... 版权声明: 本博客全部文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!
相关文章
相关标签/搜索