系统配置

/config/config.php 系统基本配置(包括默认路由,自定义路由配置等)

  1. return array(
  2. //路由配置
  3. 'router' => array(
  4. 'base_action' => 'demo', //默认路由入口
  5. 'base_shell' => 'index', //默认shell入口
  6.  
  7. //静态化配置
  8. 'routeRule' => array(
  9. // test/123 => test/view
  10. 'test/<id:[\w_]+>' => 'test/view',
  11. // abc/test/123 => test/abc
  12. '<method:\w+>/test/<id:\d+>.html' => 'test/<method>',
  13. ),
  14. ),
  15.  
  16. //自动加载配置
  17. 'autoload' => array(
  18. 'autoPath' => 'config/autoload.php',
  19. //重新构建间隔时间s
  20. 'autoSkipLoad' => 5,
  21. 'autoThrow' => true, //使用外部autoload机制(如composer) 需设置为false
  22. ),
  23.  
  24. //请求配置
  25. 'request' => array(
  26. 'trueToken' => 'biny-csrf',
  27. 'csrfToken' => 'csrf-token',
  28. 'csrfPost' => '_csrf',
  29. 'csrfHeader' => 'X-CSRF-TOKEN',
  30.  
  31. // 约定userIP字段 X_REAL_IP
  32. 'userIP' => '',
  33. // 强制返回页面协议
  34. 'showTpl' => 'X_SHOW_TEMPLATE',
  35. //csrf白名单
  36. 'csrfWhiteIps' => array(
  37. '127.0.0.1/24'
  38. ),
  39. //多语言cookie字段
  40. 'languageCookie' => 'biny_language'
  41. ),
  42.  
  43. //响应配置
  44. 'response' => array(
  45. 'jsonContentType' => 'application/json',
  46. //兼容老版本 新版本都用one就可以了
  47. 'paramsType' => 'one', // one or keys
  48. // 以下配置在paramsType == one 时有效
  49. 'paramsKey' => 'PRM',
  50. 'objectEncode' => true, //object对象是否转义
  51. ),
  52.  
  53. //日志相关配置
  54. 'logger' => array(
  55. // 是否记录日志文件
  56. 'files' => true,
  57. // 自定义日志记录方法
  58. // 'sendLog' => array('Common', 'sendLog'),
  59. // 自定义日志错误方法
  60. // 'sendError' => array('Common', 'sendError'),
  61. // 错误级别 NOTICE以上都会记录
  62. 'errorLevel' => NOTICE,
  63. // 慢查询阀值(ms)
  64. 'slowQuery' => 1000,
  65. ),
  66.  
  67. // 数据库相关配置
  68. 'database' => array(
  69. 'returnIntOrFloat' => true, // 是否返回int或者float类型
  70. 'returnAffectedRows' => false, // 是否返回受影响行数,false下返回成功true/失败false, true情况下-1为失败
  71. ),
  72.  
  73. //缓存相关配置
  74. 'cache' => array(
  75. 'pkCache' => 'tb:%s',
  76. 'session' => array(
  77. 'save_handler'=>'files', //redis memcache
  78. 'maxlifetime' => 86400 //过期时间s
  79. ),
  80. // 开启redis自动序列化存储
  81. 'serialize' => true,
  82. ),
  83.  
  84. //异常配置
  85. 'exception' => array(
  86. //返回页面
  87. 'exceptionTpl' => 'error/exception',
  88. 'errorTpl' => 'error/msg',
  89.  
  90. 'messages' => array(
  91. 500 => '网站有一个异常,请稍候再试',
  92. 404 => '您访问的页面不存在',
  93. 403 => '权限不足,无法访问'
  94. )
  95. ),
  96.  
  97.  
  98.  
  99. )

/config/autoload.php 系统自动加载类的配置,会根据用户代码自动生成,无需配置,但必须具有写权限

/config/exception.php 系统异常配置类

/config/http.php HTTP请求基本错误码

/config/database.php DAO映射配置

用户可通过App::$base->config->get方法获取

简单例子:

  1. /config/config.php
  2. return array(
  3. 'session_name' => 'biny_sessionid'
  4. }
  5.  
  6. // 程序中获取方式 第二个参数为文件名(默认为config可不传)第三个参数为是否使用别名(默认为true)
  7. App::$base->config->get('session_name', 'config', true);