• thinkphp 配置格式


    ThinkPHP支持多种格式的配置格式,但最终都是解析为PHP数组的方式。

    PHP数组定义

    返回PHP数组的方式是默认的配置定义格式,例如:

    //项目配置文件
    return [
        // 默认模块名
        'default_module'        => 'index',
        // 默认控制器名
        'default_controller'    => 'Index',
        // 默认操作名
        'default_action'        => 'index',
        //更多配置参数
        //...
    ];
    

    配置参数名不区分大小写(因为无论大小写定义都会转换成小写),新版的建议是使用小写定义配置参数的规范。

    还可以在配置文件中可以使用二维数组来配置更多的信息,例如:

    //项目配置文件
    return [
        'cache'                 => [
            'type'   => 'File',
            'path'   => CACHE_PATH,
            'prefix' => '',
            'expire' => 0,
        ],
    ];
    

    其他配置格式支持

    默认方式为PHP数组方式定义配置文件,你可以在入口文件定义CONF_EXT常量来更改为其它的配置类型:

    // 更改配置格式为ini格式
    define('CONF_EXT', '.ini');
    

    配置后,会自动解析支持的配置类型,包括.ini.xml.json 和 .php 在内的格式支持。

    5.0.2版本开始支持yaml配置格式支持

    ini格式配置示例:

    default_module=Index ;默认模块
    default_controller=index ;默认控制器
    default_action=index ;默认操作
    

    xml格式配置示例:

    <config>
    <default_module>Index</default_module>
    <default_controller>index</default_controller>
    <default_action>index</default_action>
    </config>
    

    json格式配置示例:

    {
    "default_module":"Index",
    "default_controller":"index",
    "default_action":"index"
    }
    

    二级配置

    配置参数支持二级,例如,下面是一个二级配置的设置和读取示例:

    $config = [
        'user'  =>  [
            'type'  =>  1,
            'name'  =>  'thinkphp',
        ],
        'db'    =>  [
            'type'      =>  'mysql',
            'user'      =>  'root',
            'password'  =>  '',
        ],
    ];
    // 设置配置参数
    Config::set($config);
    // 读取二级配置参数
    echo Config::get('user.type');
    // 或者使用助手函数
    echo config('user.type');
    

    系统不支持二级以上的配置参数读取,需要手动分步骤读取。
    有作用域的情况下,仍然支持二级配置的操作。

    如果采用其他格式的配置文件的话,二级配置定义方式如下(以ini和xml为例):

    [user]
    type=1
    name=thinkphp
     [db]
    type=mysql
    user=rot
    password=''
    

    标准的xml格式文件定义:

    <config>
    <user>
    <type>1</type>
    <name>thinkphp</name>
    </user>
    <db>
    <type>mysql</type>
    <user>root</user>
    <password></password>
    </db>
    </config>
    

    set方法也支持二级配置,例如:

    Config::set([
        'type'      =>  'file',
        'prefix'    =>  'think'
    ],'cache');

    「大理石检验平台」大理石检验平台的日常保养工作有哪些?

  • 相关阅读:
    Centos-获取远程主机对应端口信息-telnet
    Centos-跟踪数据传输路由状态-traceroute
    Centos-本机网络连接、运行端口和路由表等信息-netstat
    Centos-远程拷贝-scp
    Centos-配置网络或显示当前网络接口状态-ifconfig
    Centos-挂载和卸载分区-mount
    Centos-退出抽取设备-eject
    Centos-强制将内存中数据写入磁盘-sync
    Centos-检查文件系统并尝试修复-fsck
    数据结构-静态查找表
  • 原文地址:https://www.cnblogs.com/furuihua/p/11558193.html
Copyright © 2020-2023  润新知