JSON準拠にするために、「フラット」配列から巨大な多次元連想配列を作成する必要があります。
$data = array (
'Europe',
'West',
'Germany',
'France',
'Switzerland',
'East',
'Czech Republic',
'Slovakia',
'Poland')
各エンティティについて、それが統合されているか (ヨーロッパ、西および東)、または基本要素 (つまり、子なし) であるかを言うことができます。
私が達成したいのは、次の配列です。
Array
(
[0] => Array
(
[0] => Array
(
[entity] => Europe
[children] => Array
(
[0] => Array
(
[entity] => West
[children] => Array
(
[0] => Array
(
[entity] => France
)
[1] => Array
(
[entity] => Germany
)
[2] => Array
(
[entity] => Switzerland
)
)
)
[1] => Array
(
[entity] => East
[children] => Array
(
[0] => Array
(
[entity] => Czech Republic
)
[1] => Array
(
[entity] => Slovakia
)
[2] => Array
(
[entity] => Poland
)
)
)
)
)
)
)
私はすでにそのための再帰関数を書き込もうとしました:
function ListArray($top_elt)
{
$myarray=array();
$myarray[0]['entity']=$top_elt;
// foreach element of the list
foreach($children as $child)
{
//element is consolidated : call the recursive function to list the children
// this is the function that returns whether the element is consolidated or not
if(palo_etype($connect,'Demo','Regions',$child)=='consolidated')
{
$myarray[0]['children'][]['entity']=$child;
ListArray($child);
}
else //basis element
{
$myarray[0]['children'][]['entity']=$child;
}
}
return $myarray;
}
しかし、それはヨーロッパ、西、東のみを返します...
アイデアはありますか?
よろしくお願いいたします。
乾杯、ラルーン