boa类
| 版本 | 1.0+ |
| 命名空间 | boa |
| 文件 | boa/boa.php |
| 说明 | 系统的总控,静态类,程序的启动、初始化、子过程的调度、类的访问等均通过此类,配置: 'VERSION' => '', 'NAME' => '', 'CHARSET' => '', 'SALT' => '', 'DEBUG' => , 'LANGUAGE' => '', |
配置
| 配置项 | 默认值 | 类型 | 说明 |
|---|---|---|---|
| VERSION | 5.5 | string | 必须;系统版本 |
| NAME | BoaSoft.Top | string | 必须;系统默认名称 |
| CHARSET | UTF-8 | string | 必须;系统字符集 |
| SALT | boa2020 | string | 必须;系统各种加密盐度值,建议设置复杂一点 |
| DEBUG | false | bool | 可选;是否开启调试模式 |
| LANGUAGE | zh-cn | string | 可选;默认语言包 |
目录
| 方法 | 说明 |
|---|---|
| init() | 初始化,完成系统的一些初始设置和配置,完成后触发 \boa\event\listener\init 监听器 |
| start() | 启动主程序 |
| call() | 后端调用控制器中的动作(不经路由),达到模拟浏览器请求,完成后触发 \boa\event\listener\action 监听器 |
| info() | 获取或设置$info变量信息,$info包含了系统的运行时间、内存等信息 |
| env() | 获取和设置当前环境数据 |
| route() | 解析当前URL得到环境数据 |
| in_env() | 返回当前环境的上层环境 |
| lang() | 解析语言文本 |
| model() | 访问各模块中的模型 |
| const() | 获取常量 |
| db() | boa::database()别名,参见 __callStatic() |
| lib() | 访问各模块中的类 |
| save() | 设置页面保存路径,如果设定,页面执行后会将HTML内容保存到该位置 |
| getkey() | 根据常量值获取常量键 |
| conf() | 初始配置,定义全局常量 |
| mod() | 模块配置,定义模块常量,并触发module监听器 |
| con() | 初始化控制器,并触发controller监听器 |
| head() | 设置默认响应头 |
| type() | 设置全局消息输出类型 |
| finish() | 生成静态和写日志等,PHP请求结束会自动调用,使用boa::call()时可以手动调用此方法来模拟每个页面执行结束 |
| debug() | 调试变量,输出到临时目录 debug.txt |
| __callStatic() | 魔术方法,容器式调用类 |
方法
| 说明 | ||||
|---|---|---|---|---|
| 初始化,完成系统的一些初始设置和配置,完成后触发 \boa\event\listener\init 监听器 |
| 说明 | ||||
|---|---|---|---|---|
| 启动主程序 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $env | [] | array | 设置启动环境,否则从默认环境启动 | |
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| 后端调用控制器中的动作(不经路由),达到模拟浏览器请求,完成后触发 \boa\event\listener\action 监听器 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $key | string | '模块.控制器.动作'(节点式),要调用的动作,省略的节点则代表当前环境 | ||
| $var | [] | array | 设置环境var参数,类似于URL中的参数 | |
| 返回值 | ||||
| 如果执行的动作有返回值,则返回 | ||||
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| 获取或设置$info变量信息,$info包含了系统的运行时间、内存等信息 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $k | null | string | 键 | |
| $v | null | string | 值 | |
| 返回值 | ||||
| 如果设定$k和$v:则设置$info中$k项,无返回值; 如果只设定$k:则返回$info中$k值(string); 如果都未设定:则返回整个$info数组(array); |
||||
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| 获取和设置当前环境数据 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $k | null | string | 键,支持二维数组(节点式写法),比如 var.page 表示var参数中page参数 | |
| $v | null | string | 值 | |
| 返回值 | ||||
| 如果设定$k和$v:则设置当前环境中$k项,无返回值; 如果只设定$k:则返回当前环境中$k值(string); 如果都未设定:则返回整个当前环境数据(array); |
||||
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| 解析当前URL得到环境数据 |
| 说明 | ||||
|---|---|---|---|---|
| 返回当前环境的上层环境 | ||||
| 返回值 | ||||
| 返回上层环境(array) | ||||
| 示例 | ||||
|
| 说明 | ||||
|---|---|---|---|---|
| 解析语言文本 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $... | Y | string | 动态参数;首个参数为语言标签,节点式写法,最少三级,必须;后续参数为该语言文本中的可替换项,可选 | |
| 返回值 | ||||
| 返回语言文本(string 或 array) | ||||
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| 访问各模块中的模型 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $key | Y | string | '模块.模型'(节点式写法) | |
| 返回值 | ||||
| 返回模型类(object) | ||||
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| 获取常量 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $key | Y | string | 常量名称,优先得到模块中常量 | |
| 返回值 | ||||
| 返回常量(string) | ||||
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| boa::database()别名,参见 __callStatic() |
| 说明 | ||||
|---|---|---|---|---|
| 访问各模块中的类 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $key | Y | string | '[模块.]类'(节点式写法),省略模块节点则表示当前模块 | |
| $args | null | mixed | 类的初始化参数 | |
| 返回值 | ||||
| 返回类(object) | ||||
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| 设置页面保存路径,如果设定,页面执行后会将HTML内容保存到该位置 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $path | Y | string | 绝对路径用以保存HTML | |
| $force | false | bool | 是否强制覆盖已有HTML文件 | |
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| 根据常量值获取常量键 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $val | Y | string | 常量值 | |
| $type | 0 | int | 常量类型,可选值: 0:PHP全局常量 1:类的内部常量 |
|
| $class | string | 组名或类名, type=0时:PHP常量分组名称,留空则全部 type=1时:常量所在类的名称 |
||
| $prefix | string | 常量前缀,不同常量会有相同值,为了精确获取 | ||
| 返回值 | ||||
| 返回常量键名(string) | ||||
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| 初始配置,定义全局常量 |
| 说明 | ||||
|---|---|---|---|---|
| 模块配置,定义模块常量,并触发module监听器 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $mod | Y | string | 模块名 | |
| 说明 | ||||
|---|---|---|---|---|
| 初始化控制器,并触发controller监听器 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $key | null | string | [模块.]控制器(节点式),省略取当前环境值 | |
| 返回值 | ||||
| 返回初始化后的控制器类(object) | ||||
| 说明 | ||||
|---|---|---|---|---|
| 设置默认响应头 |
| 说明 | ||||
|---|---|---|---|---|
| 设置全局消息输出类型 |
| 说明 | ||||
|---|---|---|---|---|
| 生成静态和写日志等,PHP请求结束会自动调用,使用boa::call()时可以手动调用此方法来模拟每个页面执行结束 |
| 说明 | ||||
|---|---|---|---|---|
| 调试变量,输出到临时目录 debug.txt | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $v | Y | string | 要调试的变量,支持字符串、数组、对象等 | |
| $k | - | string | 变量名称,便于区别 | |
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| 魔术方法,容器式调用类 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $name | Y | string | 要调用的类名 | |
| $cfg | [] | array | 动态配置,默认使用config.php中配置 | |
| 返回值 | ||||
| 返回类(object) | ||||
| 示例 | ||||
|
||||