我有字符串:Main.Sub.SubOfSub某種數據可能是字符串:SuperData我如何將其全部轉換為上述數組?Array([Main] => Array ( [Sub] => Array ( [SubOfSub] => SuperData ) ))謝謝幫忙,PK
2 回答

Qyouu
TA貢獻1786條經驗 獲得超11個贊
給定值
$key = "Main.Sub.SubOfSub";
$target = array();
$value = "SuperData";
這里有一些我可以滿足您需要的代碼1:
$path = explode('.', $key);
$root = &$target;
while(count($path) > 1) {
$branch = array_shift($path);
if (!isset($root[$branch])) {
$root[$branch] = array();
}
$root = &$root[$branch];
}
$root[$path[0]] = $value;
看到它在行動。
1實際上,它的作用還不止于此:它可以簡單地封裝在一個函數中,并且可以在所有三個輸入值上進行配置(您可以將一個具有現有值的數組傳遞給它,并在必要時對其進行擴展)。
添加回答
舉報
0/150
提交
取消