繁体   English   中英

PHP和MYSQL:获取具有级别的关联数组

PHP & MYSQL: Fetch associative array with levels

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

因此,我想使用PHP构建导航菜单。

菜单项存储在数据库中。

数据库:

+--------+---------+  
| 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;  
    }
问题暂未有回复.您可以查看右边的相关问题.
1 PHP - MySQL行值的关联数组级别

该模型 我有一个包含多个与对象关联的类别和值的数据库,因此元素X可以有一个值为“Sevilla”的“city”,一个值为“Spain”的“country”,依此类推。 数据库方案如下: 当然,这些链接到我存储ID的值的其他表。 一开始 用户可以按照用户想要的顺序选择按 ...

2 PHP,如何按级别从关联数组中获取值

我的问题是如何从某个数组的确定级别获取所有值,我有这个数组: 我想用这个递归函数获得第一级,但我找不到比 2 级更深的层次,例如我需要第一级,我得到: 蓝色、布兰科、多拉多、佛得角 但我需要第二级的 Azul:128GB、64GB 问题是,如果我需要 Azul 和 64GB 的第 3 级,我 ...

3 mysql和php关联数组

我有这张桌子: 我想将其加载到一个关联数组中,如下所示: 但是我真的很挣扎。 有人可以帮忙吗? 非常感谢 TheBounder。 ...

2011-07-12 19:49:39 3 1311   php/ mysql
4 mysql获取到多维关联数组php

我有一个SQL查询,该查询返回一堆包含id,field1,field2,field3的行,我想创建一个以这种方式访问​​的数组: 我尝试了这个: 并访问: 我得到消息: 我在做什么不好? 可以想象,主要目标是根据存储的数据在选择中加载/选择适当的选项。 还 ...

5 PHP按行获取MySQL数据库作为关联数组

我有一个简单的mySQL数据库表,正在将其加载到PHP数组中。 我希望mySQL表的id列(它是自动递增的,但我认为不相关)是PHP数组每个元素的数组键,而不是数字数组。 代替这个: 我要这个: 我不在乎id是否留在每一行的关联数组中。 有没有一种方法可以在不循环访 ...

7 用php将关联数组插入mysql

我有一个看起来像的关联数组 我想将此数组放在mysql中,以便可以使用汇率制作货币转换器。 我的问题是你如何尝试 我得到的错误是针对所使用的表运行查询[“字段列表”中的未知列“ AUD”)时出错 欢迎任何帮助,谢谢 ...

8 PHP,MySQL和关联数组问题…?

我跟随着w3schools的示例从mysql db中提取一些行并以表格式返回结果,但是我只得到了空白行(尽管它们的数目正确,很奇怪)。 这是我的PHP脚本中的内容: 有人可以帮我看看我要去哪里了吗? ...

9 从 MySQL 查询结果创建关联数组 - PHP

我正在尝试从 MySQL 查询结果创建一个关联数组。 我想拉两列,一列包含名称,另一列包含数字。 我打算创建的东西是这样的: 我无法在花括号之间构造一些合理的东西,它可以创建一个数组,其中名称列中的数据作为键,而数字列中的数据作为值。 花括号中的每一次努力都得到了长而愤怒的 PHP 解析错误的丰 ...

2011-06-04 01:19:08 2 27508   php/ mysql
10 PHP / MySQL多维/关联数组

我有这段代码可以从mySQL获取数据,并将其输出为数组(多维),如下所示: //结束代码 我正在努力实现这一目标: 主题猫1 | CAT 2 | 中期| 结束语 算术50 35 好可以做得更好 英语20 40 可以做得更好 题: 如何在显示 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM