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 — Restituisce tutte le opzioni di configurazione
Descrizione
$extension
] )
Restituisce tutte le opzioni di configurazione come una matrice
associativa. Se viene specificato il parametro opzionale extension
La funzione restituirà solo le opzioni specifiche per quel modulo.
I nomi delle opzioni faranno da indice per la matrcie restituita, quindi gli elementi potranno essere: global_value (impostata in php.ini), local_value (impostata in ini_set() oppure in .htaccess), e access (il livello di accesso). Per avere informazioni su cosa siano i livello di accesso, vedere la pagina del manuale su modifiche di configurazione
Nota:
Per le direttive è possibile avere più livelli di accesso, è per questo che access restituisce le appropriate maschere di bit.
Example #1 Esempio di uso di ini_get_all()
<?php
$inis = ini_get_all();
print_r($inis);
?>
Parte dell'aoutput potrebbe essere:
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
)
...
)
Vedere anche ini_get(), ini_restore(), ini_set(), get_loaded_extensions() e phpinfo().
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.
