如何在从数据库中提取数据并将其转换为树形结构后,将树结构转换为平面数组php
问题描述:
我的数组看起来像这样。如何在从数据库中提取数据并将其转换为树形结构后,将树结构转换为平面数组php
array(1) {
[6]=>
array(1) {
["sub_id"]=>
array(3) {
[15]=>
array(1) {
["sub_id"]=>
array(0) {
}
}
[16]=>
array(1) {
["sub_id"]=>
array(0) {
}
}
[21]=>
array(1) {
["sub_id"]=>
array(0) {
}
}
}
}
}
,但我想要的只是按键的平板阵列 阵{6,15,16,21}
答
我已经为你的输出功能。请试试这个。
$result = get_elements($array);
function get_elements($array) {
$result = array();
foreach($array as $key => $row) {
$result[] = $key;
if(count($row['sub_id']) > 0) {
$result = array_merge($result,get_elements($row['sub_id']));
}
}
return $result;
}
+0
真棒! !谢啦兄弟 – user1675595
use array_keys $ ss = array_keys($ array_values);的print_r($ SS); – JYoThI
只读取第一个元素,忽略子元素 – user1675595
使用带SPL的[第一个答案](http://*.com/a/1320259/3859027),但使用'RecursiveIteratorIterator :: SELF_FIRST'标志 – Ghost