| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169 | <?phpnamespace app\admin\model\unishop;use think\Cache;use think\Model;class Config extends Model{    //数据库    protected $connection = 'database';    // 表名    protected $name = 'unishop_config';    // 自动写入时间戳字段    protected $autoWriteTimestamp = false;    // 定义时间戳字段名    protected $createTime = false;    protected $updateTime = false;    // 追加属性    protected $append = [    ];    /**     * 读取配置类型     * @return array     */    public static function getTypeList()    {        $typeList = [            'string'   => __('String'),            'text'     => __('Text'),            'editor'   => __('Editor'),            'number'   => __('Number'),            'date'     => __('Date'),            'time'     => __('Time'),            'datetime' => __('Datetime'),            'select'   => __('Select'),            'selects'  => __('Selects'),            'image'    => __('Image'),            'images'   => __('Images'),            'file'     => __('File'),            'files'    => __('Files'),            'switch'   => __('Switch'),            'checkbox' => __('Checkbox'),            'radio'    => __('Radio'),            'array'    => __('Array'),            'custom'   => __('Custom'),        ];        return $typeList;    }    public static function getRegexList()    {        $regexList = [            'required' => '必选',            'digits'   => '数字',            'letters'  => '字母',            'date'     => '日期',            'time'     => '时间',            'email'    => '邮箱',            'url'      => '网址',            'qq'       => 'QQ号',            'IDcard'   => '身份证',            'tel'      => '座机电话',            'mobile'   => '手机号',            'zipcode'  => '邮编',            'chinese'  => '中文',            'username' => '用户名',            'password' => '密码'        ];        return $regexList;    }    /**     * 读取分类分组列表     * @return array     */    public static function getGroupList()    {        $groupList = self::getByName('configgroup');        $groupList = json_decode($groupList['value'],true);        foreach ($groupList as $k => &$v) {            $v = __($v);        }        return $groupList;    }    public static function getArrayData($data)    {        if (!isset($data['value'])) {            $result = [];            foreach ($data as $index => $datum) {                $result['field'][$index] = $datum['key'];                $result['value'][$index] = $datum['value'];            }            $data = $result;        }        $fieldarr = $valuearr = [];        $field = isset($data['field']) ? $data['field'] : (isset($data['key']) ? $data['key'] : []);        $value = isset($data['value']) ? $data['value'] : [];        foreach ($field as $m => $n) {            if ($n != '') {                $fieldarr[] = $field[$m];                $valuearr[] = $value[$m];            }        }        return $fieldarr ? array_combine($fieldarr, $valuearr) : [];    }    /**     * 将字符串解析成键值数组     * @param string $text     * @return array     */    public static function decode($text, $split = "\r\n")    {        $content = explode($split, $text);        $arr = [];        foreach ($content as $k => $v) {            if (stripos($v, "|") !== false) {                $item = explode('|', $v);                $arr[$item[0]] = $item[1];            }        }        return $arr;    }    /**     * 将键值数组转换为字符串     * @param array $array     * @return string     */    public static function encode($array, $split = "\r\n")    {        $content = '';        if ($array && is_array($array)) {            $arr = [];            foreach ($array as $k => $v) {                $arr[] = "{$k}|{$v}";            }            $content = implode($split, $arr);        }        return $content;    }    /**     * 本地上传配置信息     * @return array     */    public static function upload()    {        $uploadcfg = config('upload');        $upload = [            'cdnurl'    => $uploadcfg['cdnurl'],            'uploadurl' => $uploadcfg['uploadurl'],            'bucket'    => 'local',            'maxsize'   => $uploadcfg['maxsize'],            'mimetype'  => $uploadcfg['mimetype'],            'multipart' => [],            'multiple'  => $uploadcfg['multiple'],        ];        return $upload;    }}
 |