首頁 >後端開發 >php教程 >如何在 PHP 中使用字串路徑動態設定嵌套數組資料?

如何在 PHP 中使用字串路徑動態設定嵌套數組資料?

Patricia Arquette
Patricia Arquette原創
2024-12-11 09:48:10424瀏覽

How to Dynamically Set Nested Array Data Using a String Path in PHP?

使用字串路徑設定巢狀陣列資料

問題:
如何動態設定巢狀使用字串路徑的數組數據,例如“cars.honda.civic” $data'cars'['civic'] 不依賴eval()?

答案:
引用運算子(&) 允許此動態設定:

$temp = &$data;
foreach ($exploded_path as $key) {
    $temp = &$temp[$key];
}
$temp = $value;
unset($temp);

透過使用此方法,您可以有效地設定嵌套數組數據,而不需要eval()。它的工作原理如下:

  • $temp 被初始化為對根數組 ($data) 的引用。
  • 循環迭代分解路徑,更新 $temp 以連續引用現有陣列。
  • $temp 最後被分配了所需的值$value.
  • unset($temp) 清除引用,防止意外的副作用。

以上是如何在 PHP 中使用字串路徑動態設定嵌套數組資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn