2 回答

TA貢獻1818條經(jīng)驗 獲得超7個贊
您可以使用以下代碼遞歸迭代所有結構并僅提取您需要的數(shù)據(jù)(按鍵)。我假設 $data 具有您的原始數(shù)據(jù)結構,并且在 $result 中您將獲得區(qū)域數(shù)組:
$it = new RecursiveIteratorIterator(new RecursiveArrayIterator($data), RecursiveIteratorIterator::SELF_FIRST);
$result = [];
foreach ($it as $k => $v) {
if ($k === 'area') {
$result = array_merge($result, $v);
}
}

TA貢獻1798條經(jīng)驗 獲得超7個贊
我不會使事情過于復雜,遍歷您的數(shù)據(jù)結構。將所有區(qū)域添加到集合中。準備您的數(shù)據(jù)結構,我添加了一個檢查以確保沒有重復項unique()。
$data = 'your-data';
$areas = collect();
foreach($data->data as $country) {
foreach($country->regions as $region) {
foreach ($region->depots as $depot) {
$areas->concat($depot->area);
}
}
}
$result = ['area' => $areas->unique('id')->all()];
- 2 回答
- 0 關注
- 154 瀏覽
添加回答
舉報