ini_get

(PHP 4 , PHP 5)

ini_get -- Lit la valeur d'une option de configuration

Description

string ini_get ( string varname )

ini_get() retourne la valeur de l'option de configuration varname en cas de succès, et FALSE sinon.

Lecture de valeurs booléennes : Une directive de configuration ayant la valeur de off sera retourné sous la forme d'une chaîne vide ou "0" alors que la valeur on retournera "-1".

Lors de la lecture des tailles de mémoire : Plusieurs directives traitant de taille mémoire, comme upload_max_filesize, sont stockées dans le fichier php.ini avec une notation courte. ini_get() retourne la chaîne exacte stockée dans le fichier php.ini et NON PAS son équivalent entier. Appliquer des opérations arithmétiques classiques sur ces valeurs ne conduira à rien de bon. L'exemple ci-dessous montre une façon de convertir la notation sténographique en octets, de la même façon dont le fait le source PHP.

Exemple 1. Les directives liées aux tailles mémoires sont lues littéralement

<?php
/*
Notre fichier php.ini contient les directives suivantes :

display_errors = On
register_globals = Off
post_max_size = 8M
*/

echo 'display_errors   = ' . ini_get('display_errors')    . "\n";
echo
'register_globals = ' . ini_get('register_globals')  . "\n";
echo
'post_max_size    = ' . ini_get('post_max_size')     . "\n";
echo
'post_max_size+1  = ' . (ini_get('post_max_size')+1) . "\n";
echo
'post_max_size en octets = ' . return_bytes(ini_get('post_max_size'));

function
return_bytes($val) {
    
$val = trim($val);
    
$last = strtolower($val{strlen($val)-1});
    switch(
$last) {
        
// Le modifieur 'G' est disponible depuis PHP 5.1.0
        
case 'g':
            
$val *= 1024;
        case
'm':
            
$val *= 1024;
        case
'k':
            
$val *= 1024;
    }

    return
$val;
}

?>

L'exemple ci-dessus va afficher :

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

Voir aussi get_cfg_var(), ini_get_all(), ini_restore() et ini_set().