2 回答

TA貢獻1829條經驗 獲得超7個贊
我認為您真正想知道的是如何創建數組引用。您可以通過在數組名稱前添加 & 符號來實現此目的
<?php
$arrayWithPrettyLongName = [
'level_1' => [
'key_1' => 10,
'key_2' => 20,
'key_3' => 30,
]
];
// Test-1 // Works fine!
$result_1 =
$arrayWithPrettyLongName['level_1']['key_1'] +
$arrayWithPrettyLongName['level_1']['key_2'] +
$arrayWithPrettyLongName['level_1']['key_3'] ;
echo $result_1;
echo "\n";
//Just create an array reference here, by preceding the name with an `&`
$path = &$arrayWithPrettyLongName['level_1'];
//Also remove the `.` symbol here. That's not the correct syntax
$result_2 =
$path['key_1'] +
$path['key_2'] +
$path['key_3'] ;
echo $result_2;
但看!如果你真的想減少代碼,難道就不能這樣做嗎?
$result_3 = 0;
foreach ($arrayWithPrettyLongName['level_1'] as $value){
$result_3 += $value;
}
echo $result_3;
如果以后數組變大,保存就會很麻煩。

TA貢獻1784條經驗 獲得超2個贊
像這里一樣工作:
<?php
$arrayWithPrettyLongName = [
'level_1' => [
'key_1' => 10,
'key_2' => 20,
'key_3' => 30,
]
];
// Test-1
$result_1 =
$arrayWithPrettyLongName['level_1']['key_1'] +
$arrayWithPrettyLongName['level_1']['key_2'] +
$arrayWithPrettyLongName['level_1']['key_3'] ;
echo $result_1; //output 60
// Test-2
$path = $arrayWithPrettyLongName['level_1'];
$result_2 =
$path['key_1'] +
$path['key_2'] +
$path['key_3'] ;
echo $result_2; //output 60
?>
你錯了$path = "$arrayWithPrettyLongName['level_1']";必須是沒有""
另一個改變是$path .必須是$path['key_1'];
- 2 回答
- 0 關注
- 178 瀏覽
添加回答
舉報