PHPのparse_ini_fileでひとつの項目に

配列で持つことは出来ないのでしょうか?
下記サンプルでは
[first_section]
five = 5
animal = BIRD
となっている部分で
five = array(1,5)
とか出来ないでしょうか?
http://search.net-newbie.com/php/function.parse-ini-file.html

他に別の方法を教えて下さい。

回答の条件
  • 1人3回まで
  • 登録:2007/04/25 10:56:19
  • 終了:2007/04/25 12:41:17

回答(1件)

id:GEN111 No.1

GEN111回答回数472ベストアンサー獲得回数582007/04/25 11:56:27

ポイント60pt

 iniファイル自体に「five = array(1,5)」と書けないか、と言うことですか?

 parse_ini_file では値に英数字以外の記号を含む場合はダブルクォートで囲め、とあるので five = "array(1,5)" にすれば文字列として持つことはできますが、いちいち array と書くのは現実的ではない気がします。

 iniファイルには five = 1,5 のようにカンマ区切りで書いておき、

$ini_array = parse_ini_file("sample.ini") ;
foreach($ini_array as $key => $value) {
  if (strpos($value, ',')) $ini_array[$key] = explode(',', $value) ;
}

 このように配列に展開するのがいいのではないでしょうか。

 配列にするところが限られているのならループにせずに個別に展開してもいいかと思いますが。

id:hopefully

やはりそうですよねw

了解です。

explodeで配列にしちゃいます。

ありがとうございます。

2007/04/25 12:40:45

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません