MegaMenuPHP is a simple menu system for PHP that allows you to recursively get menu items and its submenus.
$ php menu.php- Personal cabinet
- News
- Sub Test 1
- Sub Test 2
- Sitemap
- Sub Test 1
- Sub Test 2
- Information
- Sub Test 1
- Sub Test 2
- Contacts
- System
- Official site
- Supporting forum
Menu:
| ID | Menu ID | Parent ID |
|---|---|---|
| 1 | 1 | NULL |
| 2 | 2 | NULL |
| 3 | 3 | NULL |
| 4 | 4 | NULL |
| 5 | 5 | NULL |
| 6 | 6 | NULL |
| 7 | 7 | 6 |
| 8 | 8 | 6 |
| 9 | 9 | 2 |
| 10 | 9 | 3 |
| 11 | 9 | 4 |
| 12 | 10 | 9 |
Menu Item:
| ID | Name |
|---|---|
| 1 | Personal cabinet |
| 2 | News |
| 3 | Sitemap |
| 4 | Information |
| 5 | Contacts |
| 6 | System |
| 7 | Official site |
| 8 | Supporting forum |
| 9 | Sub Test 1 |
| 10, | Sub Test 2 |
Array
(
[0] => Array (
[id] => 1
[name] => Personal cabinet
)
[1] => Array (
[id] => 2
[name] => News
[children] => Array (
[0] => Array (
[id] => 9
[name] => Sub Test 1
[children] => Array
(
[0] => Array
(
[id] => 10
[name] => Sub Test 2
)
)
)
)
)
[2] => Array (
[id] => 3
[name] => Sitemap
[children] => Array (
[0] => Array (
[id] => 9
[name] => Sub Test 1
[children] => Array (
[0] => Array
(
[id] => 10
[name] => Sub Test 2
)
)
)
)
)
[3] => Array (
[id] => 4
[name] => Information
[children] => Array (
[0] => Array (
[id] => 9
[name] => Sub Test 1
[children] => Array (
[0] => Array (
[id] => 10
[name] => Sub Test 2
)
)
)
)
)
[4] => Array (
[id] => 5
[name] => Contacts
)
[5] => Array (
[id] => 6
[name] => System
[children] => Array (
[0] => Array (
[id] => 7
[name] => Official site
)
[1] => Array (
[id] => 8
[name] => Supporting forum
)
)
)
)
CREATE TABLE `menu` (
`id` int(20) NOT NULL,
`menu_id` int(20) NOT NULL,
`parent_id` int(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `menu_item` (
`id` int(20) NOT NULL,
`name` varchar(54) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;© Copyright 2022, Max Base