PHP&MYSQL:获取具有级别的关联数组
所以我想用PHP来构建一个导航菜单 菜单项存储在数据库中 数据库: 我需要的输出应该如下所示: 期望输出: 构建菜单的函数应该使用如下代码,我不确定我在做什么,我正在尝试使用以下代码: 这是我的密码:PHP&MYSQL:获取具有级别的关联数组,php,mysql,arrays,function,menu,Php,Mysql,Arrays,Function,Menu,所以我想用PHP来构建一个导航菜单 菜单项存储在数据库中 数据库: 我需要的输出应该如下所示: 期望输出: 构建菜单的函数应该使用如下代码,我不确定我在做什么,我正在尝试使用以下代码: 这是我的密码: +--------+---------+ | id | int(11) | +--------+---------+ | title | varchar | +--------+---------+ | url | varchar | +--------+-
+--------+---------+
| id | int(11) |
+--------+---------+
| title | varchar |
+--------+---------+
| url | varchar |
+--------+---------+
| parent | int(11) |
+--------+---------+
$menu = array
(
array
(
'title' => 'Item One',
'url' => 'item_one.php',
),
array
(
'title' => 'Item Two',
'url' => 'item_two.php',
'children' => array
(
array
(
'title' => 'Item Three',
'url' => 'item_three.php',
),
array
(
'title' => 'Item Four',
'url' => 'item_four.php',
)
)
)
);
// Connect to database and fetch result.
$stmt = $db->prepare('SELECT id,parent,title,url FROM nav_menu');
$stmt->execute();
$result= $stmt->fetch(PDO::FETCH_ASSOC);
// Example function that i'm not sure how to use to get the desired output.
function build($level = NULL)
{
$level_id = empty($level) ? 0 : $level->id;
$level = $this->where('parent', $level_id)->orderby('id', 'asc')->find_all();
$menu = new menu;
foreach ($items as $lvl)
{
$menu->add($lvl->title, $lvl->url, $this->build($lvl));
}
return $menu;
}