[PHP-users 31275] Re: 配列の可変変数

Seto seto @ 1kg.jp
2007年 1月 18日 (木) 23:22:28 JST


 Setoです。
evalを使ってみてはどうでしょうか

$key = "['a']['b']['c']";
$str = "\$data$key = \"value\";";
eval( $str );
var_dump( $data );

結果
array(1) {
  ["a"]=>
  array(1) {
    ["b"]=>
    array(1) {
      ["c"]=>
      string(5) "value"
    }
  }
}


#ちょっとすっきりしない感じではありますが・・・

>実際には多次元配列(次元数は変動する)で以下のような使い方をしたいのです。
>望んでいる動作は
>$data[a][b][c]="value";
>と同様のことです。
>
>
>$key='[a][b][c]';
>$data{$key} = "value";
>
>
Junya Seto


PHP-users メーリングリストの案内