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).
ini_get_all
(PHP 4 >= 4.2.0, PHP 5)
ini_get_all — Obtiene todas las opciones de configuración
Descripción
Devuelve todas las opciones de configuración registradas.
Lista de parámetros
- extension
-
Un nombre de extensión opcional. Si es definido, la función devuelve solo opciones específicas a esa extensión.
Valores retornados
Devuelve una matriz asociativa que usa el nombre de directiva como clave de la matriz, mientras los elementos de esa matriz son global_value (definido en php.ini), local_value (quizás definido con ini_set() o en .htaccess), y access (el nivel de acceso). Vea la sección del manual sobre cambios de configuración para más información sobre qué quieren decir los niveles de acceso.
Note: Es posible que una directiva tenga múltiples niveles de acceso, razón por la cual access muestra los valores de máscara de bits apropiados.
Ejemplos
Example #1 Un ejemplo de ini_get_all()
<?php
$inis = ini_get_all();
print_r($inis);
?>
El resultado del ejemplo seria algo similar a:
Array ( [allow_call_time_pass_reference] => Array ( [global_value] => 1 [local_value] => 1 [access] => 6 ) [allow_url_fopen] => Array ( [global_value] => 1 [local_value] => 1 [access] => 7 ) ... )
ini_get_all
21-Jan-2008 10:33
20-Dec-2002 05:15
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.
