(PHP 5 >= 5.3.0, PHP 7, PHP 8)
parse_ini_string — Analyse une chaîne de configuration
$ini_string
, bool $process_sections
= false
, int $scanner_mode
= INI_SCANNER_NORMAL
): array|false
parse_ini_string() retourne la configuration dans la
chaîne ini_string
dans un tableau associatif.
La structure de la chaîne doit être la même que celle du fichier php.ini.
ini_string
Le contenu de type ini à analyser.
process_sections
En activant le paramètre process_sections
avec true
, vous obtiendrez un tableau multidimensionnel,
avec les noms de sections et de directives. La valeur par
défaut du paramètre process_sections
est false
scanner_mode
Peut prendre les valeurs des constantes INI_SCANNER_NORMAL
(par défaut) ou INI_SCANNER_RAW
. Si
INI_SCANNER_RAW
est utilisé, les valeurs des
options ne seront pas analysées.
À parti de PHP 5.6.1 peut aussi être spécifié comme INI_SCANNER_TYPED
.
Dans ce mode les booléens, null et entiers sont préservés tant que possible.
Les chaines de caractères "true"
, "on"
et "yes"
sont converties vers true
. "false"
, "off"
, "no"
et "none"
sont considérés comme false
. "null"
est converti en null
dans ce mode. De plus toutes les chaines de caractères numériques sont converties en entier si possible.
Les directives sont retournées sous forme de tableau array
en cas de succès, et false
en cas d'erreur.
Note: Il y a plusieurs mots réservés que ne doivent pas être utilisés comme clé dans les fichiers .ini. Cela inclut :
null
,yes
,no
,true
,false
,on
,off
,none
. Les valeursnull
,off
,no
etfalse
sont retournées comme "" (chaîne vide) et les valeurson
,yes
ettrue
sont retournées comme "1" à moins que le modeINI_SCANNER_TYPED
ne soit utilisé. Les caractères?{}|&~![()^"
ne doivent être utilisés nulle part dans les clés, et ont une signification spéciale dans les valeurs.