# Yaf的Bootstrap
Bootstrap, 也叫做引导程序. 它是Yaf提供的一个全局配置的入口, 在Bootstrap中, 你可以做很多全局自定义的工作.
在一个Yaf\_Application被实例化之后, 运行(Yaf\_Application::run)之前, 可选的我们可以运行Yaf\_Application::bootstrap
**1.例如在入口文件 index.php**
~~~
<?php
$app = new Yaf_Application("conf.ini");
$app
->bootstrap() //可选的调用
->run();
}
~~~
当bootstrap被调用的时刻, Yaf\_Application就会默认的在APPLICATION\_PATH下, 寻找Bootstrap.php, 而这个文件中, 必须定义一个Bootstrap类, 而这个类也必须继承自Yaf\_Bootstrap\_Abstract.
实例化成功之后, 所有在Bootstrap类中定义的, 以\_init开头的方法, 都会被依次调用, 而这些方法都可以接受一个Yaf\_Dispatcher实例作为参数.
**一个Bootstrap的例子:**
~~~
<?php
/**
* 所有在Bootstrap类中, 以_init开头的方法, 都会被Yaf调用,
* 这些方法, 都接受一个参数:Yaf_Dispatcher $dispatcher
* 调用的次序, 和申明的次序相同
*/
class Bootstrap extends Yaf_Bootstrap_Abstract{
public function _initConfig() {
$config = Yaf_Application::app()->getConfig();
Yaf_Registry::set("config", $config);
}
public function _initDefaultName(Yaf_Dispatcher $dispatcher) {
$dispatcher->setDefaultModule("Index")->setDefaultController("Index")->setDefaultAction("index");
}
}
~~~
> 注意:
> 方法在Bootstrap类中的定义出现顺序, 决定了它们的被调用顺序. 比如对于上面的例子, \_initConfig会第一个被调用.
- 序言
- 安装 Yaf
- Yaf基础知识
- 1.运行流程
- 2.YAF架构
- 3.目录结构
- 4.Yaf的配置
- 5.Yaf的Bootstrap
- 6.Yaf的多模块配置
- 7.Yaf中使用命名空间
- 本书框架配置
- 1.框架目录结构
- 2.数据库配置
- 3.缓存配置
- 4.全局配置
- 5.公共助手函数
- 请求与响应
- 1.请求-Request
- 2.响应-Response
- 数据库操作
- 使用think-orm
- 接口开发
- 1.RESTful接口设计
- 2.Yar RPC接口设计
- 数据验证
- 数据验证 - validate
- 网页开发
- Session
- Cookie
- 路由设置
- 工具类
- 1.Rsa加密
- 2.Random快速生成随机数
- 3.Cache - 缓存
- 4.Weapp - 微信小程序类
- 5.Qiniu - 七牛云存储使用
- 6.支付类(微信&支付宝)
- 7.Logs - 日志记录