我正在使用 PHP,需要在数组方面进行一项看似简单的任务。这是我的示例数组:
该数组的键表示ID(唯一)。 值是parentIDs,即父“节点”的ID。 NULL表示没有parentID(即新数组的第1维)。
现在,我需要创建一个新的多维数组,其中所有子元素都在其父ID下。 (这可能听起来非常令人困惑,对于我的描述能力不足感到抱歉。下面有一个例子,应该可以使事情更清楚)
在“排序”函数或称为此操作的任何其他函数应用后,此示例的新数组如下所示: $arr = array( 0 => array(), 1 => array(), 2 => array( 8 => array( 14 => array( 16 => array(), 17 => array(), 18 => array() ), 15 => array() ), 9 => array(), 10 => array(), 11 => array() ), 3 => array( 12 => array(), 13 => array() ) );
我知道所有空数组(array())可能不是非常干净和优雅的解决方案,但不幸的是这是我需要的方式!
$arr = array(
0 => NULL,
1 => NULL,
2 => NULL,
3 => NULL,
8 => '2',
9 => '2',
10 => '2',
11 => '2',
12 => '3',
13 => '3',
14 => '8',
15 => '8',
16 => '14',
17 => '14',
18 => '14'
);
该数组的键表示ID(唯一)。 值是parentIDs,即父“节点”的ID。 NULL表示没有parentID(即新数组的第1维)。
现在,我需要创建一个新的多维数组,其中所有子元素都在其父ID下。 (这可能听起来非常令人困惑,对于我的描述能力不足感到抱歉。下面有一个例子,应该可以使事情更清楚)
在“排序”函数或称为此操作的任何其他函数应用后,此示例的新数组如下所示: $arr = array( 0 => array(), 1 => array(), 2 => array( 8 => array( 14 => array( 16 => array(), 17 => array(), 18 => array() ), 15 => array() ), 9 => array(), 10 => array(), 11 => array() ), 3 => array( 12 => array(), 13 => array() ) );
我知道所有空数组(array())可能不是非常干净和优雅的解决方案,但不幸的是这是我需要的方式!