Asf 框架基础运行, 有了这一个配置就能完成。
名称 | 值类型 | 默认值 | 简介 |
asf.root_path | string | NULL | 业务程序的根目录, 比如: /data/www/ 最后的路径符号(/) 不强制要求填写 |
bool: false 关闭 , true 开启
名称 | 值类型 | 默认值 | 简介 |
asf.log_path | string | NULL | 正确的格式是目录地址, 比如: /data/logs/ 最后的路径符号(/) 不强制要求填写 |
asf.modules | string | api |
声明信任module模块的白名单, 多个模块名称以逗号分隔 项目存在多个模块时, api模块名称可以省略 比如: asf.modules = "api, admin, shop, cat" |
asf.bootstrap | string | NULL | bootstrap 绝对路径 + 文件名; 默认空 位于asf.root_path/Bootstrap.php |
asf.contants | string | NULL | contants 绝对路径 + 文件名; 默认空 位于asf.root_path/Constants.php |
asf.library | string | NULL | 默认去根目录下查找文件, asf.root_path/library/ 自定义类库目录的绝对地址, 比如: /data/php/library/ 加载文件的规则是, 类名就是文件名称 |
asf.base_uri | string | NULL | 在路由器识别地址中, 需要忽略的前缀. 只适用于路由协议 Asf_Route_Pathinfo |
asf.dispatcher.default_module | string | api | 声明默认的module名称 |
asf.dispatcher.default_service | string | index | 声明默认的service名称 |
asf.dispatcher.default_action | string | index | 声明默认的action名称 |
asf.dispathcer.route.type | string | pathinfo | 三种路由协议: pathinfo、query、dot |
asf.dispathcer.route.module_name | string | m | 当使用路由协议query时生效, 设置module名称 |
asf.dispathcer.route.service_name | string | s | 当使用路由协议query时生效, 设置控制器名称 |
asf.dispathcer.route.action_name | string | a | 当使用路由协议query时生效, 设置action名称 |
asf.dispathcer.route.dot_name | string | method | 当使用路由协议dot时生效, 设置URL参数的key名称 |
asf.dispathcer.log.sql | bool | false |
注: 必须设置 asf.log_path 才能生效 在 asf.log_path 目录下生成 Asf_Sql_Log 日志文件(默认值), 记录SQL语句 (文件名暂时不支持自定义, 因为它不是强需求) |
asf.dispathcer.log.err | bool | false |
注: 必须设置 asf.log_path 才能生效 PHP内置函数 set_error_handler、set_exception_handler 组合体 在 asf.log_path 目录下生成 Asf_Err_Log 日志文件(默认值) (日志文件名支持自定义) |
asf.dispathcer.log.timeout | bool | false |
注: 必须设置 asf.log_path 才能生效 在 asf.log_path 目录下生成 Asf_Timeout_Log 日志文件(默认值) (日志文件名暂时不支持自定义) |
asf.dispathcer.timeout.max_script_time | double | 1.0 |
注: 必须设置 asf.log_path 才能生效 PHP脚本最大执行时间 (单位: 秒) 在 asf.log_path 目录下生成 Asf_Timeout_Log 日志文件(默认值) asf.dispathcer.timeout.* 系列配置输出内容相同日志文件名 (文件名暂时不支持自定义) |
asf.dispathcer.timeout.max_db_time | double | 0.1 | 每条SQL(包括: MySQL, PgSQL, SQLite)最大执行时间 (单位: 秒) |
asf.dispathcer.timeout.max_cache_time | double | 0.1 | 每条NoSQL命令(包括: Redis, Memcached, Mongo)最大执行时间 (单位: 秒) |
asf.dispathcer.timeout.max_curl_time | double | 0.1 | 每条CURL请求最大执行时间 (单位: 秒) |
名称 | 值类型 | 默认值 | 简介 |
asf.env | string | online | 环境配置, online 代表线上环境 |
asf.use_namespace | bool | false | 使用命名空间方式注册框架提供的类, 权限控制在php.ini文件里设置才生效 (推荐开启) |
asf.ctype_id | uint | 5 | 支持5种输出模式: 0 关闭, 1 json_errmsg, 2 serialize, 3 var_dump, 5 json_data 在cli模式下, 自动输出模式自动关闭。模式1结构比较清晰, 模式5节约流量。 模式1: {"errno":0,"errmsg":"","data":""} 模式5: {"errno":0,"data":"公用字段"} |
asf.use_lcache | bool | false | 有且只有文件日志类生效 开启日志缓冲区功能时, 数据先写入内存, 程序结束时合并数据再写入到文件 自动关闭打开的文件描述符 |
asf.log_buffer_size | uint | 100 | 设置Log Buffer缓冲区数量, 默认值 100 当缓冲区数量>=log_buffer_size, 日志一次性写入到文件中 |
asf.throw_exception | bool | true | 默认抛出异常信息. 如果关闭, 直接输出错误信息 程序抛出异常, 可以使用异常函数 try{} ... catch{} 捕获到内容、错误码等 如果关闭, 程序直接输出错误信息, 无法进行异常捕获 |
asf.cache_config_enable | bool | false | 框架入口配置文件缓存服务, 开启之后会常驻内存(详细说明) |
asf.cache_config_expire | uint | 300 | 设置缓存数据有效期限, 默认 5 分钟过期 (单位: 秒) |
asf.trace_enable | uint | 0 | 记录基于框架DB、Cache类各项操作的语句、耗时信息, 1开启 0关闭(default) |
[remove] |
bool | false | 默认文件名首字母转换为大写, 其余部分转换为小写. 如果开启, 项径 + 文件名全部转换为小写 |
[remove] |
bool | false | 设置文件名是否带类名, 默认不带类名(User.php). 如果开启, 带类名(Userservice.php) |
[remove] |
bool | true | 默认方法名带Action后缀. 路由解析methodAction不区分大小写, 强烈建议保留默认值 |
900 ~ 999 Asf 框架采用的错误码范围, 请开发者注意
错误号 (暂时不提供自定义) | 错误号描述 |
990 ~ 999 |
Asf 框架异常捕获错误号码段 errno = 999, 表示含义: Fatal Error, 会对异常信息进行有效拦截 errno = 998, 表示含义: Warning errno = 997, 表示含义: Notice errno = 996, 表示含义: Strict errno = 995, 表示含义: Deprecated errno = 994, 表示含义: Unkown Error |
970 ~ 989 |
Asf 框架耗时预警模块错误号码段, 配置项见: asf.dispathcer.timeout.* errno = 970, 表示含义: MySQL 单条SQL执行时间超过预设阀值 errno = 971, 表示含义: Redis 单条NoSQL执行时间超过预设阀值 errno = 972, 表示含义: Memcached 单条NoSQL执行时间超过预设阀值 errno = 973, 表示含义: PgSQL 单条SQL执行时间超过预设阀值 errno = 974, 表示含义: SQLite 单条SQL执行时间超过预设阀值 errno = 975, 表示含义: CURL 请求时间超过预设阀值 errno = 976, 表示含义: 脚本完整生命周期请求时间超过预设阀值 |
常量名称 | 常量名称(命名空间) | 常量值 |
ASF_VERSION | ASF\VERSION | 2.2.3 (框架当前的版本号) |
ASF_LOGGER_FILE | ASF\LOGGER\FILE | 0 |
ASF_LOGGER_SYSLOG | ASF\LOGGER\SYSLOG | 1 |
ASF_DB_MYSQL | ASF\DB\MYSQL | 0 |
ASF_DB_SQLITE | ASF\DB\SQLITE | 1 |
ASF_DB_PGSQL | ASF\DB\PGSQL | 2 |