"Thomas Lindgaard" <thomas@dnspilot.com> wrote in message
news:9qjgg2$ujd$1@news.cybercity.dk...
> > Det er klart at der skal skrives en rekursiv funktion til formålet, men
> > hvordan den skal kalde sig selv (vha. &-operatoren) for at returnere ét
> > array, kan jeg ikke lige regne ud.
>
> Et (forhåbentlig brugbart) gæt (som jeg fralægger mig ethvert ansvar for
:)
[snip kode]
>
> Tanken er følgende:
[snip tanke]
Mange tak for inspiration. Jeg havde sat mine tanker fast i at det skulle
løses med &-operatoren og havde derfor ikke skænket array_merge() en tanke i
denne sammenhæng.
Det blev dog ikke helt løsningen, da hverken array_merge() eller
array_merge_recursive() var tilstrækkelige. Heldigvis havde en hvis hr.
kc@hireability.com på
http://www.php.net/manual/en/function.array-merge-recursive.php postet en
funktion der har den ønskede funktionalitet.
Alt i alt ser løsningen således ud:
function getArray($nav_parent=0)
{
global $db;
$sql = "SELECT id FROM pages WHERE nav_parent=".$nav_parent;
$result = $db->query($sql);
while($row = $result->fetchRow(DB_FETCHMODE_ASSOC)) {
$arr = array($row['id'] => $this->getArray($row['id']));
$return_value = array_merge_clobber((array)$return_value, $arr);
}
return $return_value;
}
Takker.
--
Mvh./Best Regards
Jonas Delfs,
http://delfs.dk
Søger freelance PHP-arbejde