0

$$ を使用して文字列を変数として使用する方法に混乱しています。主に、文字列を使用して配列インデックスを参照する場合です。次のケースを考えてみましょう。

$colors = array(
'r'=>"red",
'b'=>"blue"
);
$vr = "colors[r]"; //I tried even this "color['r']"
echo $$vr; // I tried even this ${$vr}

上記のことが可能かどうかは誰でもわかります。予想されるo/pは、「color [r]」を文字列として使用し、それを変数として使用して赤です。

4

1 に答える 1

0

それを直接行うことはできません。次の点を考慮してください。

$varName = array_shift(explode('[', $vr));

foreach($$varName as $key=>$value){
    echo $key.": ".$value."<br />";
}

これは出力されます:

r: red
b: blue

変数 variable は、最初の部分 (色) だけです。これにキーを含めることはできません。

于 2013-07-07T09:25:30.687 に答える