2011-08-10 11 views
3

PHPで固有の設定ハンドラを作成しようとしました。ネイティブPHP parse_ini_file -functionを使用しました。私は値がブール値である私の設定エントリのすべてがtrue/falseであることに気付きました。他のほとんどの設定エントリは文字列に型キャストされています。PHPを使用して* .iniファイルを解析する際にブール値を失う

どうやら、これはすでによく知られた問題です:http://www.php.net/manual/en/function.parse-ini-file.php#100851

ように、適切な回避策は何ですか?
それは必要なとき以外の開発者が値を変更することは死んで容易になりますこれ、非PHP-のconfigsを利用するためには本当にきちんとですので、私は*.iniベースのconfigsを維持するのが大好きです。

答えて

0

私はこの問題に対する最も簡単な解決策は、あなた自身の設定ハンドラを使うことだと思います。 iniクラスを書くか、無料のものをダウンロードしてください(ini形式は非常に簡単です)。

しかし、あなたは相互運用をしたい場合、私はXMLであなたの設定を保存することをお勧めします。現代のプログラミング言語には、数多くのXMLパーサが利用可能または組み込まれています。また、設定構造の柔軟性も向上します。そして、あなたは簡単にタイプセッティングを設定することができます。

+0

感謝を維持します。代わりに私のconfigsのベースとしてJSONファイルを使用して終了しました! – Industrial

0

少し遅れてパーティーへが、PHP 5.6のように、あなたは三番目の引数INI_SCANNER_TYPEDを渡すことができ、それは価値の種類あなたの答えのための

parse_ini_file('config.ini', true, INI_SCANNER_TYPED) 
関連する問題