Config.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | 海豚PHP框架 [ DolphinPHP ]
  4. // +----------------------------------------------------------------------
  5. // | 版权所有 2016~2017 河源市卓锐科技有限公司 [ http://www.zrthink.com ]
  6. // +----------------------------------------------------------------------
  7. // | 官方网站: http://dolphinphp.com
  8. // +----------------------------------------------------------------------
  9. // | 开源协议 ( http://www.apache.org/licenses/LICENSE-2.0 )
  10. // +----------------------------------------------------------------------
  11. namespace app\admin\model;
  12. use think\Model;
  13. /**
  14. * 后台配置模型
  15. * @package app\admin\model
  16. */
  17. class Config extends Model
  18. {
  19. // 设置当前模型对应的完整数据表名称
  20. protected $table = '__ADMIN_CONFIG__';
  21. // 自动写入时间戳
  22. protected $autoWriteTimestamp = true;
  23. /**
  24. * 获取配置信息
  25. * @param string $name 配置名
  26. * @return mixed
  27. */
  28. public function getConfig($name = '')
  29. {
  30. $configs = self::column('value,type', 'name');
  31. $result = [];
  32. foreach ($configs as $config) {
  33. switch ($config['type']) {
  34. case 'array':
  35. $result[$config['name']] = parse_attr($config['value']);
  36. break;
  37. case 'checkbox':
  38. if ($config['value'] != '') {
  39. $result[$config['name']] = explode(',', $config['value']);
  40. } else {
  41. $result[$config['name']] = [];
  42. }
  43. break;
  44. default:
  45. $result[$config['name']] = $config['value'];
  46. break;
  47. }
  48. }
  49. return $name != '' ? $result[$name] : $result;
  50. }
  51. }