(PHP 5 >= 5.3.0, PHP 7, PHP 8)
parse_ini_string — Parse a configuration string
parse_ini_string(string $ini_string, bool $process_sections = false, int $scanner_mode = INI_SCANNER_NORMAL): array|false
parse_ini_string() returns the settings in string ini_string in an associative array.
The structure of the ini string is the same as the php.ini's.
This function must not be used with untrusted inputs, unless scanner_mode is INI_SCANNER_RAW since the parsed output might contain the values of sensitive constants, such as constants holding a database password.
ini_stringThe contents of the ini file being parsed.
process_sections By setting the process_sections parameter to true, you get a multidimensional array, with the section names and settings included. The default for process_sections is false
scanner_mode Can either be INI_SCANNER_NORMAL (default) or INI_SCANNER_RAW. If INI_SCANNER_RAW is supplied, then option values will not be parsed.
As of PHP 5.6.1 can also be specified as INI_SCANNER_TYPED. In this mode boolean, null and integer types are preserved when possible. String values "true", "on" and "yes" are converted to true. "false", "off", "no" and "none" are considered false. "null" is converted to null in typed mode. Also, all numeric strings are converted to integer type if it is possible.
Note: There are reserved words which must not be used as keys for ini files. These include:
null,yes,no,true,false,on,off,none. Valuesnull,off,noandfalseresult in"", and valueson,yesandtrueresult in"1", unlessINI_SCANNER_TYPEDmode is used. Characters?{}|&~![()^"must not be used anywhere in the key and have a special meaning in the value.
© 1997–2025 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.parse-ini-string.php