在php.ini文件里自定义配置项

  假设在php.ini文件里创建了如下自定义配置项:

[PHP]

profile.name   = 张三
profile.gender = profile.birth  = 2003

;;;;;;;;;;;;;;;;;;;
; About php.ini   ;
;;;;;;;;;;;;;;;;;;;
; PHP's initialization file, generally called php.ini, is responsible for
; configuring many of the aspects of PHP's behavior.



  读取自定义配置项:

<?php
declare(strict_types=1);
ini_set('display_errors', 'On');
error_reporting(-1);

/**
 * 打印变量的相关信息
 *
 * @param mixed $value 要打印的表达式
 * @param mixed ...$values 更多要打印的表达式
 * @return void echo
 */
function v(mixed $value, mixed ...$values): void
{
    ob_start(); // 打开输出控制缓冲
    var_dump($value);
    echo ob_get_clean(); // 从缓冲区获取var_dump()的内容,然后清空缓冲区

    foreach ($values as $v) {
        v($v); // 递归
    }
}


//========== 使用get_cfg_var()获取自定义配置项 ==========//
v(get_cfg_var('profile.name')); // string(6) "张三"
v(get_cfg_var('profile.gender')); // string(3) "男"
v(get_cfg_var('profile.birth')); // string(4) "2003"
v(get_cfg_var('profile.job')); // bool(false)


//========== 使用ini_get()获取自定义配置项 ==========//
v(ini_get('profile.name')); // bool(false)
v(ini_get('profile.gender')); // bool(false)
v(ini_get('profile.birth')); // bool(false)


//========== 使用ini_set()修改自定义配置项 ==========//
v(ini_set('profile.name', '李四')); // bool(false)
v(ini_get('profile.name')); // bool(false)
v(get_cfg_var('profile.name')); // string(6) "张三"


//========== 总结 ==========//
// 1、对于php.ini文件里的自定义配置项,只能用get_cfg_var()获取,不能用ini_get()获取。
// 2、无法使用ini_set()动态修改自定义配置项的值,想修改只能在php.ini文件里面修改。

Copyright © 2024 码农人生. All Rights Reserved