Recursiviteit
PHP Code
1 | //de functie <?PHP function array2list($array) { echo '<ul>'; foreach($array as $key => $item) { echo '<li>'; if(is_array($item)) { echo $key; print_array($item); }else { echo $item; } echo '</li>'; } echo '</ul>'; } //de array $menu = array( 'Home', 'Images' => array( 'Smileys', 'Foto's', 'Vakantie', 'Casemod' ), 'Tools' => array( 'Rekenmachine', 'Nieuws', 'TV gids' => array( 'Nederland 1', 'Nederland 2', 'Nederland 3' ), 'Nieuwsripper', ), 'Tutorials' ); //Oproepen van de functie array2list($menu); ?> |
Een hele lap code in één keer, nu nog een keer de belangrijkste – de functie – met uitleg erbij.
PHP Code
1 | <?PHP function array2list($array) //1. Begin de functie { echo '<ul>'; //2. begin van een menu/submenu foreach($array as $key => $item) //3. array doorlopen { echo '<li>'; //4. begin van een menuitem if(is_array($item)) //5. als het menuitem een array is { echo $key; //6. word de naam van de array weergeven array2list($item); //6. en de functie opnieuw gestart waardoor je dus een boomstructuur krijgt! }else //7. anders { echo $item; //8. word het menuitem geëcho'd } echo '</li>'; //9. einde van een menuitem } echo '</ul>'; //10. einde van het menu/submenu } ?> |
Zoals je ziet is het vooral belangrijk dat er in het geval van een array (5.) de functie opnieuw word gestart om zo een submenu te genereren.
Als je dit script een beetje logisch bekijkt zul je zien hoe het werkt.
Table of contents
- 1. Introduction
- 2. Recursiviteit
- 3. Uitbreiding