ini_get

(PHP 4, PHP 5, PHP 7, PHP 8)

ini_get获取一个配置选项的值

说明

ini_get(string $option): string|false

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

参数

option

配置选项名称。

返回值

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

示例

示例 #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 = ' . (int) ini_get('register_globals') . "\n";
echo
'post_max_size = ' . ini_get('post_max_size') . "\n";
echo
'post_max_size + 1 = ' . (rtrim(ini_get('post_max_size'), 'KMG') + 1) . "\n";
echo
'post_max_size in bytes = ' . return_bytes(ini_get('post_max_size'));

function
return_bytes($val)
{
$val = trim($val);
$num = (int) rtrim($val, 'KMG');
$last = strtolower($val[strlen($val) - 1]);

switch (
$last) {
// 可以使用修饰符 'G'
case 'g':
$num = $num * 1024 * 1024 * 1024;
break;
case
'm':
$num = $num * 1024 * 1024;
break;
case
'k':
$num *= 1024;
break;
}

return
$num;
}

?>

以上示例的输出类似于:

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

注释

注意: 当查询一个 boolean 值

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

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

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

注意:

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

参见