虽然多模块的配置可能会有一些争议,但是在项目前期能加快开发效率和部署效率,若项目发展起来有了更多的资源后可以考虑分拆模块。yaf也支持多模块的配置,先看下yaf如何配置多模块。 yaf配置多模块 假如我
和常见的mvc框架不同,这里多了一个业务层用来封装系统业务。为什么要多一个层出来呢?以往的时候没有这个层,通常都把业务放在控制器层进行处理。在长期的开发app的数据接口中,发现控制器层做的事情实在是太多
Yaf_Request_Abstract代表了一个实际请求, 一般的不用自己实例化它, Yaf_Application在run以后会自动根据当前请求实例它,在程序中我们可以通过Yaf_Request_Abstract获得请求中的信息,比如参数,controller,
Yaf_Registry, 对象注册表(或称对象仓库)是一个用于在整个应用空间(application space)内存储对象和值的容器 通过把对象存储在其中,我们可以在整个项目的任何地方使用同一个对象 这种机制相当于一种全局存储
Yaf给用户提供一个了一个可扩展的、可自定的视图引擎接口,就是Yaf_View_Interface,并且Yaf还内置实现了一个简单的模板引擎Yaf_View_Simple,它只支持只支持PHP脚本。所以我们一般都会用自己的视图引擎(比如Smarty)来代替Yaf内置的Yaf_View_Simple。
Yaf_Config_Abstract被设计在应用程序中简化访问和使用配置数据。它为在应用程序代码中访问这样的配置数据提 供了一个基于用户接口的嵌入式对象属性。配置数据可能来自于各种支持等级结构数据存储的媒体。
Yaf_Dispatcher用于初始化处理请求的运行环境, 它协调路由来的请求, 并分发和执行发现的动作, 然后收集动作产生的响应, 输出响应给请求者, 并在整个过程完成以后返回响应
通过前面的学习已经对Yaf有初步的认识了,但是很多时候我们还是无从下手,前面的示例代码我们也许能看懂,但我们自己写代码还是比较困难,那是因为我们对Yaf的内建类还不熟悉,要构建我们的项目,首先要对Yaf的建类。
Yaf零基础学习总结8-Yaf中的路由和路由协议
Yaf支持用户定义插件来扩展Yaf的功能, 这些插件都是一些类 它们都必须继承自Yaf_Plugin_Abstract 插件要发挥功效, 也必须现实的在Yaf中进行注册, 然后在适当的实际, Yaf就会调用它 。 也许大家会问这个插
Yaf零基础学习总结6-使用Bootstrap
在上一节的hello yaf当中我们已经接触过了yaf的配置文件了,Yaf和用户共用一个配置空间, 也就是在Yaf_Application初始化时刻给出的配置文件中的配置 作为区别, Yaf的配置项都以ap开头 Yaf的核心必不可少的配置项只有一个!
上一次我们已经学习了如何安装yaf了,准备工作做好了之后我们来开始实际的编码了,码农都知道一个经典的语句就是“Hello World”了,今天我们开始入手Yaf,目标只要能得到“Hello Yaf”就可以了,不多说,下面
Yaf零基础学习总结2-Yaf框架的安装
Yaf零基础学习总结1-Yaf框架简介
Yaf_Loader 类为Yaf提供了自动加载功能的全面解决方案。在第一次使用的时候,将检索 Yaf_Application 的实例, Yaf_Loader 实现了单利模式,并使用spl_autoload注册它自己。 通过 Yaf_Loader::getInstanc
框架的一个重要功能就是类的自动加载了,在第一个demo的时候我们就约定自己的项目的目录结构,框架就基于这个目录结构来自动加载需要的类文件。