Array ( ) Test pratique PHP

Test pratique PHP

À faire

À l'aide du array $items défini dans le fichier items.php, reproduire le menu hardcodé ci-dessous.
Le <li> qui contient le lien vers la "page" dans laquelle on se trouve doit avoir la classe "active" et ses <li> parents aussi.
(Dans l'exemple hardcodé, on serait actuellement dans la page "Sous-sous-item 1")
Les <ul> doivent avoir une classe level-[numéro] qui correspond au niveau de profondeur du menu.
La clé "url" dans chaque élément de $items ne contient pas l'url complet, celui-ci doit être construit à partir des urls de ses parents.

Informations suppémentaires

Le .htaccess fournit redirige toutes les requêtes vers index.php
Le menu n'a pas à être stylisé (les couleurs ne sont là que pour illustrer les différentes classes), il s'agit d'un exercice de PHP seulement.

Menu hardcodé

$items

array (
  0 => 
  array (
    'id' => 1,
    'parent_id' => NULL,
    'title' => 'Menu item 1',
    'url' => 'menu-item-1',
  ),
  1 => 
  array (
    'id' => 2,
    'parent_id' => NULL,
    'title' => 'Menu item 2',
    'url' => 'menu-item-2',
  ),
  2 => 
  array (
    'id' => 3,
    'parent_id' => NULL,
    'title' => 'Menu item 3',
    'url' => 'menu-item-3',
  ),
  3 => 
  array (
    'id' => 4,
    'parent_id' => 2,
    'title' => 'Sous-item 1',
    'url' => 'sous-item-1',
  ),
  4 => 
  array (
    'id' => 5,
    'parent_id' => 2,
    'title' => 'Sous-item 2',
    'url' => 'sous-item-2',
  ),
  5 => 
  array (
    'id' => 6,
    'parent_id' => 2,
    'title' => 'Sous-item 3',
    'url' => 'sous-item-3',
  ),
  6 => 
  array (
    'id' => 7,
    'parent_id' => 2,
    'title' => 'Sous-item 4',
    'url' => 'sous-item-4',
  ),
  7 => 
  array (
    'id' => 8,
    'parent_id' => 6,
    'title' => 'Sous-sous-item 1',
    'url' => 'sous-sous-item-1',
  ),
  8 => 
  array (
    'id' => 9,
    'parent_id' => 6,
    'title' => 'Sous-sous-item 2',
    'url' => 'sous-sous-item-2',
  ),
)