Hai vượt qua foreach thực hiện thủ thuật. Điều này sẽ liên kết tất cả con cái với cha mẹ của chúng một cách đệ quy.
$structure = array();
foreach( $array as $row ) { //add rows to array by id
$structure[ $row["id"] ] = $row + array( "children" => array() );
}
foreach( $structure as &$row ) { //link children to parents
if( ! is_null( $row["parent"] ) ) {
$structure[ $row["parent"] ]["children"][] =& $row;
}
}