foreach ($data as $key => $value) {
echo $key; // let say cars
}
と呼ばれる新しい変数を作成することは可能ですか?$cars
お探しextract()
ですか?
$data = array('thing' => 'ocean'
'size' => 'big'
'color' => 'blue');
extract($data);
echo "The $thing is $size and $color.";
海は大きくて青い。
これを行うには、変数変数を使用できます。foreach
foreach ($data as $key => $value)
{
$$key = $value;
}
ただし、これは単純さやオプションを提供しませんextract()
(たとえばextract()
、を使用すると、プレフィックスを追加したり、衝突の処理方法を制御したりできます)。
はい:を$key
含む"cars"
場合、次echo $$key
と同じになります:http echo $cars
: //php.net/manual/en/language.variables.variable.php
はい、次のように変数変数を使用して可能です。
$key = 'cars';
$$key = 'honda'; //$cars variable is created
echo $cars; //prints 'honda'
$key
の値と同じ名前の新しい変数を作成できるかどうかを尋ねていると思います。つまり、'cars'
create $cars
、'bikes'
create$bikes
などですか?
はい、これは可能ですが、一般的に物事を成し遂げるための最良の方法ではありません。
$data = array(
'cars' => 7,
'bikes' => 3
);
foreach ($data as $key => $value) {
$$key = $value;
}
echo $cars; // 7
echo $bikes; // 3
$keyおよび$value変数は、$keyおよび$valueと呼ばれる必要はありません。変数の名前は好きなように変更できます(有効な変数名も)。
foreach($data as $cars=>$model){
echo "$cars => $model";
}