ini_get_all

(PHP 4 >= 4.2.0, PHP 5)

ini_get_allGets all configuration options

Description

array ini_get_all ([ string $extension [, bool $details = true ]] )

Returns all the registered configuration options.

Parameters

extension

An optional extension name. If set, the function return only options specific for that extension.

details

Retrieve details settings or only the current value for each setting. Default is TRUE (retrieve details).

Return Values

Returns an associative array with directive name as the array key.

When details is TRUE (default) the array will contain global_value (set in php.ini), local_value (perhaps set with ini_set() or .htaccess), and access (the access level).

When details is FALSE the value will be the current value of the option.

See the manual section for information on what access levels mean.

Note:

It's possible for a directive to have multiple access levels, which is why access shows the appropriate bitmask values.

Changelog

Version Description
5.3.0 Added details.

Examples

Example #1 ini_get_all() examples

<?php
print_r
(ini_get_all("pcre"));
print_r(ini_get_all());
?>

The above example will output something similar to:

Array
(
    [pcre.backtrack_limit] => Array
        (
            [global_value] => 100000
            [local_value] => 100000
            [access] => 7
        )

    [pcre.recursion_limit] => Array
        (
            [global_value] => 100000
            [local_value] => 100000
            [access] => 7
        )

)
Array
(
    [allow_call_time_pass_reference] => Array
        (
            [global_value] => 0
            [local_value] => 0
            [access] => 6
        )

    [allow_url_fopen] => Array
        (
            [global_value] => 1
            [local_value] => 1
            [access] => 4
        )

    ...

)

Example #2 Disabling details

<?php
print_r
(ini_get_all("pcre"false)); // Added in PHP 5.3.0
print_r(ini_get_all(nullfalse)); // Added in PHP 5.3.0
?>

The above example will output something similar to:

Array
(
    [pcre.backtrack_limit] => 100000
    [pcre.recursion_limit] => 100000
)
Array
(
    [allow_call_time_pass_reference] => 0
    [allow_url_fopen] => 1
    ...
)

See Also

Коментарии

Автор:
I guess the third entry is the required access level (to change this variable at runtime):

Constant           Value      Meaning 
PHP_INI_USER      1          Entry can be set in user scripts 
PHP_INI_PERDIR    2          Entry can be set in php.ini, .htaccess or httpd.conf 
PHP_INI_SYSTEM    4          Entry can be set in php.ini or httpd.conf 
PHP_INI_ALL       7          Entry can be set anywhere 

See also the docs for ini_set()

Hugo.
2002-12-20 10:15:06
http://php5.kiev.ua/manual/ru/function.ini-get-all.html
Since a certain PHP version (I think it's 5.2.5) it is no longer possible to override INI entrys set with php_admin_* in httpd.conf. The access level will be set to 4 (PHP_INI_SYSTEM), which is also returned by this function.

The constants mentioned below are available in PHP, but without the prefix (e.g. INI_USER, INI_PERDIR).
2008-01-21 15:33:48
http://php5.kiev.ua/manual/ru/function.ini-get-all.html
You can use the following snippet on servers to grab the live/staging configs in order to be able to replicate those in your development environment. (I use `php -a` for this)
 <?php
foreach (ini_get_all(nullfalse) as $key => $value) echo "$key=$value;\n";
?>
2015-12-07 13:13:35
http://php5.kiev.ua/manual/ru/function.ini-get-all.html
echo recreate_php_ini();

/**
  * Sample function to re-create a php ini config file.
  *
  * @return string
  */
function recreate_php_ini() {
    $a = ini_get_all();

    $data = [];
    foreach (array_keys($a) as $k) {
        $ss = split("\.", $k);
        if (count($ss) == 1) {
            $sec = "PHP";
            $v = $k;
        } else {
            $sec = $ss[0];
            $v = $ss[1];
        }
        $data[$sec][$v] = $a[$k]['global_value'];
    }
    ksort($data);
    $out = "";
    foreach ($data as $sec => $data) {
        $out .= "[$sec]\n";
        ksort($data);
        foreach ($data as $k => $v) {
            if (is_numeric($v)) {
                $out .= sprintf("%-40s = %s\n", $k, $v);
            } else {
                $out .= sprintf("%-40s = \"%s\"\n", $k, $v);
            }
        }
        $out .= "\n";
    }
    return $out;
}
2016-03-22 01:09:44
http://php5.kiev.ua/manual/ru/function.ini-get-all.html
If you want to load and parse your own ini file, have a look at parse_ini_file() function. Example:

<?php
// ...
$my_data parse_ini_file($my_filetrue);
2018-12-14 17:19:29
http://php5.kiev.ua/manual/ru/function.ini-get-all.html

    Поддержать сайт на родительском проекте КГБ