ini_get

(PHP 4, PHP 5, PHP 7)

ini_get获取一个配置选项的值

说明

ini_get ( string $varname ) : string

成功时返回配置选项的值。

参数

varname

配置选项名称。

返回值

成功是返回配置选项值的字符串,null 的值则返回空字符串。如果配置选项不存在,将会返回 FALSE

范例

Example #1 一些 ini_get() 例子

<?php
/*
我们的 php.ini 包含了以下的设置:

display_errors = On
register_globals = Off
post_max_size = 8M
*/

echo 'display_errors = ' ini_get('display_errors') . "\n";
echo 
'register_globals = ' ini_get('register_globals') . "\n";
echo 
'post_max_size = ' ini_get('post_max_size') . "\n";
echo 
'post_max_size+1 = ' . (ini_get('post_max_size')+1) . "\n";
echo 
'post_max_size in bytes = ' return_bytes(ini_get('post_max_size'));

function 
return_bytes($val) {
    
$val trim($val);
    
$last strtolower($val[strlen($val)-1]);
    switch(
$last) {
        
// 自 PHP 5.1.0 起可以使用修饰符 'G'
        
case 'g':
            
$val *= 1024;
        case 
'm':
            
$val *= 1024;
        case 
'k':
            
$val *= 1024;
    }

    return 
$val;
}

?>

以上例程的输出类似于:

display_errors = 1
register_globals = 0
post_max_size = 8M
post_max_size+1 = 9
post_max_size in bytes = 8388608

注释

Note: 当查询一个 boolean 值

一个 off 的 boolean ini 值将会以空字符串或者 "0" 返回;on 的 ini 值会以 "1" 返回。 此函数也会返回 INI 值的文字字符串。

Note: 当查询一个内存尺寸的值

许多内存尺寸的 ini 值,类似 upload_max_filesize 是以简写表示法储存在 php.ini 文件里。 ini_get() 会返回 php.ini 文件中储存的确切字符串,而不是它的等量 integer。 尝试对这些值使用常规算术运算函数将不会得到预期的结果。 以上例子显示了转换简写表示法为字节的一种方式,和 PHP 源码所做的比较像。

Note:

ini_get() 无法读取 "array" 的 ini 选项,例如 pdo.dsn.*,在这个例子中会返回 FALSE

更新日志

版本 说明
5.3.0 当配置项不存在,之前会返回空字符串,现在会返回 FALSE

参见

关注编程学问公众号