ini_get_all

(PHP 4 >= 4.2.0, PHP 5)

ini_get_all Получение всех настроек конфигурации

Описание

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

Возвращает все зарегистрированные настройки конфигурации.

Список параметров

extension

Необязательное имя расширения. Если задано, функция вернет только специфичные для данного расширения настройки.

details

Выводить детальные сведения о настройках или только текущие значения. По умолчанию TRUE (выводить деталные сведения).

Возвращаемые значения

Возвращает ассоциативный массив с именами директив в качестве ключей.

Если details равен TRUE (по умолчанию) в массиве будут содержаться global_value (значение настройки php.ini), local_value (возможно, заданное с помощью ini_set() или .htaccess) и access (уровень доступа).

Если details равен FALSE, значением массива будет соответствующее текущее значение настройки.

См. соответствующий раздел руководства, в котором приводится описание уровней доступа.

Замечание:

Директива может иметь несколько уровней доступа, в этом случае access будет содержать соответствующую битовую маску.

Список изменений

Версия Описание
5.3.0 Добавлен аргумент details.

Примеры

Пример #1 Примеры использования ini_get_all()

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

Результатом выполнения данного примера будет что-то подобное:

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
        )

    ...

)

Пример #2 Отключение details

<?php
print_r
(ini_get_all("pcre"false)); // Добавлено в PHP 5.3.0
print_r(ini_get_all(nullfalse)); // Добавлено в PHP 5.3.0
?>

Результатом выполнения данного примера будет что-то подобное:

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

Смотрите также

add a note add a note

User Contributed Notes 2 notes

up
4
justd@ntmailme
11 years ago
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.
up
2
root at mantoru dot de
6 years ago
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).
To Top