foreach ($data as $key => $value) {
echo $key; // let say cars
}
是否有可能創建一個名爲$cars
foreach ($data as $key => $value) {
echo $key; // let say cars
}
是否有可能創建一個名爲$cars
是的,它是可能的,使用variable variables,就像這樣:
$key = 'cars';
$$key = 'honda'; //$cars variable is created
echo $cars; //prints 'honda'
是不是這樣說'$ cars ='honda';'? –
@JonathanKuhn在我的例子中是的,但我只是在說明這個概念,當你從一個數組中動態地從數組中獲得'honda'時,你會看到它的真正用處。 – Nelson
的$鍵和$價值變量沒有被稱爲$鍵和$值的新變量。你可以隨意重命名變量(以及任何有效的變量名稱)。
foreach($data as $cars=>$model){
echo "$cars => $model";
}
是:用含"cars"
$key
,echo $$key
將是相同echo $cars
:http://php.net/manual/en/language.variables.variable.php
我想你問如果可以創建一個與$key
的值同名的新變量 - 那麼'cars'
會創建$cars
,'bikes'
會創建$bikes
等?
是的,這是可能的,但它通常不是完成任務的最佳方式。
$data = array(
'cars' => 7,
'bikes' => 3
);
foreach ($data as $key => $value) {
$$key = $value;
}
echo $cars; // 7
echo $bikes; // 3
@downvoter您至少可以添加評論爲什麼? – Baba
您是在查找extract()
?
$data = array('thing' => 'ocean'
'size' => 'big'
'color' => 'blue');
extract($data);
echo "The $thing is $size and $color.";
海洋大和藍色。
您可以使用foreach
和variable variables做到這一點:
foreach ($data as $key => $value)
{
$$key = $value;
}
但是,這並不提供簡單或extract()
的選項(例如:與extract()
,您可以添加控制如何處理碰撞等)
您可以創建一個名爲「$ cars」的新變量。現在,請編輯您的文章並解釋您想要完成的內容。 – Styxxy
每個問題,'$ cars =「cars」;'。真的需要澄清你的意思。 –
只需將$ data傳遞給控制器的視圖,但我必須將它稱爲$ data ['cars']。而要更簡單,我希望它是$汽車 – fufu