parse_ini_string
設定文字列をパースする
説明
arrayfalse parse_ini_string(string $ini_string, bool $process_sections = false, int $scanner_mode = INI_SCANNER_NORMAL)
文字列の構造は、php.ini の構造と同じです。
警告
この関数は、信頼できない入力に対して使用してはいけません。
ただし、scanner_mode が
INI_SCANNER_RAW の場合を除きます。
パース済みの出力には、データベースパスワードを保持する定数など、
機密性の高い定数の値が含まれる可能性があるためです。
パラメータ
-
ini_string
-
パースしたい ini ファイルの内容。
-
process_sections
-
process_sections
を true に設定すると、セクション名と設定を含む多次元配列を返します。
process_sections のデフォルトは false です。
-
scanner_mode
-
INI_SCANNER_NORMAL (デフォルト) あるいは
INI_SCANNER_RAW。INI_SCANNER_RAW
を指定すると、オプションの値はパースされません。
PHP 5.6.1 以降では INI_SCANNER_TYPED も指定できるようになりました。
このモードでは、boolean や null そして integer の型を、可能な限り維持します。
文字列 "true"、"on" そして "yes"
は true に変換されます。"false"、"off"、"no"
そして "none" は false だとみなされます。このモードでは、"null" は null
に変換されます。また数値形式の文字列も、可能な限り integer 型に変換されます。
戻り値
成功した場合に設定を連想配列形式で返します。
失敗した場合に false を返します。
注意
注意:
ini ファイル上でキーとして使ってはいけない単語があります。
null, yes, no,
true, false,
on, off, none などです。
null, off, no
および false は "" となり、
on, yes および true
は "1" となります。
ただし INI_SCANNER_TYPED モードを使っている場合は別です。
次の文字 ?{}|&~![()^" は、キーで使ってはいけません。
また、値の中で特別な意味を持ちます。