系统执行
启动
每个入口文件,在定义必须的 BS_ROOT 和 BS_WWW 常量后,系统从 boa::start() 启动:
- BS_ROOT 表示系统所在根路径
- BS_WWW 表示当前实例所在路径
调用
可以使用 boa::call() 来调用任意模块中控制器的动作,可模拟浏览器的访问:
$res = boa::call('news.content.show', ['id' => $id]);
模型
可以使用 boa::model() 来访问任意模块中的模型类:
$arr = boa::model('news.content')->get($id);
类库
可以使用 boa::lib() 来访问任意模块下library目录中类的方法:
$arr = boa::lib('admin.common')->run($id); //调用admin模块下common类的run方法
$arr = boa::lib('common')->run($id); //调用同模块下common类的run方法
环境
所有动作的执行都依据环境数据,一组环境数据完整的结构:
[
'lng' => 'zh-cn', //语言
'mod' => 'home', //模块
'con' => 'index', //控制器
'act' => 'index', //动作
'var' => [ //额外变量
'page' => 1 //分页
'....' //等
]
]
可以使用 boa::env() 来访问当前环境数据:
$mod = boa::env('mod');
$env = boa::env();
想得到上层环境数据(即当前环境所处环境)请使用 boa::in_env()
变量
在一个动作中,可以直接使用形如 $this->id 来访问$_GET, $_POST, $_COOKIE 以及环境var数组中的数据
更多参见 验证章节
常量
系统配置最终会被定义为常量,访问方法同常量
- PHP中:boa::const('NAME') 或 NAME ,模块配置需要带命名空间:\模块\NAME
- 模板中:{NAME}
更多参见 boa类