PHP - 从 MySQL 数据创建嵌套数组

2024-03-17

我有一些数据存储在表中,如下所示:

id  parent_id  name
1   0          Entry 1
2   0          Entry 2
3   0          Entry 3
4   1          Child of entry 1

我想将它变成一个嵌套数组,如下所示:

array(
    array(
        'id' => 1,
        'parent_id' => 0,
        'name' => 'Entry 1',
        'children' => array(...)
    ),
    ...
);

理想情况下,它需要支持无限数量的嵌套(孩子与孩子)。我的表是否设置为支持此功能,如果是,我将如何使用表中的数据生成这种数组?如果没有,我应该如何设置我的桌子?


这里有一个关于管理mysql分层数据的很好的描述:管理分层数据 http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/这是构建嵌套数组的另一个很好的例子:构建嵌套数组 http://snipplr.com/view/4383/build-nested-array-from-sql/

您可能会考虑使用嵌套集模型。如果您要查询很多东西,它比您现在使用的邻接模型更好。

希望有帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP - 从 MySQL 数据创建嵌套数组 的相关文章

  • 如何关闭未关闭的 HTML 标签?

    每当我们从数据库或类似来源获取一些经过编辑的用户输入内容时 我们可能会检索仅包含开始标记但不包含结束标记的部分 这可能会妨碍网站当前的布局 有客户端或服务器端的方法来解决这个问题吗 找到了一个很好的答案 使用 PHP 5 并使用 DOMDo
  • PHP - 类外 use 关键字和类内 use 关键字的区别

    伙计们 美好的一天 只是想问一下有什么区别use之外的class and use在 的里面class 我也用谷歌搜索过 但我的问题与答案不匹配 Example namespace App Http Controllers Auth use
  • 获取字符串中的最后一个整数

    我需要隔离包含多个整数的字符串中最新出现的整数 我怎样才能得到23代替1 for lastnum1 text 1 out of 23 lastnum1 this gt getEval eregi replace out of text 你可
  • 通过 URL 指定控制器类与为每个控制器编写一个脚本相比,有何优缺点?

    今年夏天我安装了两个不同的 PHP 系统 每个都使用两种不同的方法 方法 1 每个任务一个 PHP 文件 该方法需要一个PHP为每个主要任务创建文件 例如 我的上传脚本可以通过http www domain com upload php O
  • 研究MySQL、SQLite源码了解RDBMS实现[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我知道实现数据库是一个很大的话题 但我想通过研究数据库系统的源代码来基本了解数据库系统的工作原理 例如
  • 从零开始的 numpy 形状意味着什么

    好的 我发现数组的形状中可以包含 0 对于将 0 作为唯一维度的情况 这对我来说是有意义的 它是一个空数组 np zeros 0 但如果你有这样的情况 np zeros 0 100 让我很困惑 为什么这么定义呢 据我所知 这只是表达空数组的
  • PHP print_r() 中 _r 的含义是什么?

    我见过这个答案 https stackoverflow com questions 13103410 what does r suffix mean就这样 但我不确定它对于 PHP 是否相同 如果是 可重入的含义是什么 From PHP n
  • 如何通过php获取网页的Open Graph协议?

    PHP 有一个简单的命令来获取网页的元标记 get meta tags 但这仅适用于具有名称属性的元标记 然而 开放图谱协议如今变得越来越流行 从网页获取 opg 值的最简单方法是什么 例如 我看到的基本方法是通过 cURL 获取页面并使用
  • Ebay api GetSellerList,解析响应 XML

    我正在使用 eBay 交易 api 来获取当前列出的卖家股票 我正在使用 GetSellerList 调用 我在解析 xml 时遇到问题 然后将其插入到网站商店中 这是 xml 请求
  • JavaScript 中数组的 HTML 数据列表值

    我有一个简单的程序 它必须从服务器上的文本文件中获取值 然后将数据列表填充为输入文本字段中的选择 为此 我想要采取的第一步是我想知道如何动态地将 JavaScript 数组用作数据列表选项 我的代码是
  • 奇怪的 MySQL Python mod_wsgi 无法连接到 'localhost' (49) 上的 MySQL 服务器问题

    StackOverflow上也有类似的问题 但我还没有发现完全相同的情况 这是在使用 MySQL 的 OS X Leopard 机器上 一些起始信息 MySQL Server version 5 1 30 Apache 2 2 13 Uni
  • 如何在 phalcon 框架中同时连接多个数据库在模型类中同时使用两个而不仅仅是一个

    在我的代码中我有两个数据库ABC and XYZ 我想在同一模型中使用两个数据库 而不是 phalcon 中的解决方案是什么 如何为此实现多个数据库连接 one
  • 将 2D NumPy 数组按元素相乘并求和

    我想知道是否有一种更快的方法 专用 NumPy 函数来执行 2D NumPy 数组的元素乘法 然后对所有元素求和 我目前使用np sum np multiply A B 其中 A B 是相同维度的 NumPy 数组m x n 您可以使用np
  • 使用函数的 SQL 查询 - 如何获取列表的最大计数

    如何查询 MAXIMUM COUNT 交易次数 我的代码如下 SELECT customer id COUNT customer id FROM rental GROUP BY customer id HAVING MAX COUNT cu
  • 选择获取与 MySQL Group 中 max 对应的整行

    当我使用Max使用后查找特定 MySQL 组中字段的最大值GROUP BY 是否可以获取包含最大值的整行 我在处理一些论坛代码时偶然发现了这个线程 我想获取每个线程的最新帖子并将其显示在特定板的线程列表中 Quassnoi上面的回答对我非常
  • 查询为空 Node Js Sequelize

    我正在尝试更新 Node js 应用程序中的数据 我和邮递员测试过 我的开发步骤是 从数据库 MySQL 获取ID为10的数据进行更新 gt gt 未处理的拒绝SequelizeDatabaseError 查询为空 我认识到 我使用了错误的
  • 如何使用 php 在 sql 查询中转义引号?

    我有一个疑问 sql SELECT CustomerID FROM tblCustomer WHERE EmailAddress addslashes POST username AND Password addslashes POST p
  • 如何在 javascript 正则表达式中匹配平衡分隔符?

    我原以为这个问题是不可能的 据我所知 Javascript 的正则表达式既没有递归插值 也没有漂亮的 NET 平衡组功能 但问题就在那里 如问题 12 所示正则表达式 alf nu http regex alf nu 匹配平衡对 lt an
  • ZF3/2 - 如何捕获 EVENT_DISPATCH 侦听器中引发的异常?

    有什么方法可以在 EVENT DISPATCH 监听器中抛出异常吗 class Module public function onBootstrap EventInterface event application event gt get
  • 使用 PHP 将 latin1_swedish_ci 转换为 utf8

    我有一个数据库 里面充满了类似的值 Dhaka 应该是 Dhaka 因为我在创建数据库时没有指定排序规则 现在我想修复它 我无法从最初获取数据的地方再次获取数据 所以我在想是否可以在 php 脚本中获取数据并将其转换为正确的字符 我已将数据

随机推荐

  • 即使我完全信任,WebPermission 异常

    我正在尝试执行我认为简单的 HttpWebRequest 代码位于 dll 深处 因此我无法提供小代码片段 但它应该相对简单 但我遇到了安全异常 System Security SecurityException Request for t
  • 如何解决客户端-服务器应用程序中的无状态问题?

    我读过一些有关创建无状态网站的书籍 也读过一些有关有状态客户端应用程序的书籍 但是当您必须将两者结合起来时 就会出现很多复杂性 我们有一个 Flex 应用程序 需要通过 NET 服务将数据保存到数据库中 需要记住的事情是 并发 乐观 悲观
  • Android:通过套接字接收到的图像已损坏

    嗨 问题是 服务器正确地将图像发送到客户端 我认为 从客户端接收到的文件与服务器电话上存在的文件大小相同 因此我猜每个字节都已传输 但图像仍然不可见 服务器和客户端都是安卓手机 预先感谢我希望你能帮助我 服务器代码 public class
  • 使用 catimg 并排显示两个内容(就像在 neofetch 中一样)

    我正在尝试使用 bash 创建类似 neofetch 的东西 我想在右侧显示一张图像和一张 ASCII 艺术图 使用 cat 当我对某些机器进行 ssh 时 我想将其用作登录欢迎屏幕 所以我能够通过以下方式展示 ascii 艺术 cat l
  • 将对象附加到序列化文件

    假设您有一些 AppendObjectOutputStream 类 它是一个 ObjectOutputStream 它重写了 writeStreamHeader 如下所示 Override public void writeStreamHe
  • ObjectContext.Refresh()?

    如何从数据存储中更新所有脏实体 并将其更改后的值重置为原始存储值 方法对象上下文刷新 http msdn microsoft com en us library bb503718 aspx需要将要刷新的实体作为参数 以下通常有效 Conte
  • 编译器的“-O0”选项和“-Og”选项有什么区别?

    当我想要调试 C 或 C 程序时 我被教导使用 O0关闭优化 以及 ggdb将符号插入到为使用 GNU 而优化的可执行文件中gdb调试器 我使用它 或者 你可以使用 glldb对于 LLVM clang 来说lldb调试器 或者只是 g对于
  • 使用 xcodebuild 命令行使用 PROVISIONING_PROFILE 签名应用程序失败

    我尝试使用 Xcode 签署我的应用程序命令行 Running xcodebuild命令行开启MyApp xcodeproj like so xcodebuild project MyApp xcodeproj target MyApp s
  • 如何在 RSpec Expect 语法中模拟类方法?

    我对如何使用 new 模拟类方法感到困惑expect句法 这有效 Facebook should receive profile with token and return name gt Hello id gt 14314141 emai
  • 为什么带有几个按钮的基本 UIScrollView 不会滚动?

    为什么带有几个按钮的基本 UIScrollView 不会滚动 所以我所做的就是 创建基于视图的 iPhone 应用程序 将 UIScrollView 拖入主控制器 xib 文件中 滚动视图现在作为 IB 中 View 的子视图 在 IB 中
  • Laravel old() 不工作

    Form open array route gt posts store data parsley validate gt Form label title Title Form text title old title array cla
  • 使用 API Gateway 保护云功能

    我的目标是防止用户使用 API 密钥和 API 网关访问我的云函数端点 我已经成功部署了API网关 但是 每个云功能的原始端点仍然存在并且可供公众访问 我希望将云功能端点设为私有 同时将 api 网关端点设为公共 但我不确定如何实现这一点
  • 处理 Julia 中 kwargs 的类型

    我该如何使用kwargs在 Julia 函数中并声明其类型以提高速度 function f x Float64 kwargs kwargs Dict kwargs if haskey kwargs c c Float64 kwargs c
  • Swift 在沙盒模式下执行命令行命令

    目前我正在尝试接触 Swift 编程 我尝试从我的内部执行命令行命令macOS Swift 应用程序 没有将我的应用程序设置为沙箱 一切都工作正常 但由于我激活了沙箱 该命令将不再起作用 但不会抛出任何错误并以状态代码终止0 所以最简单的用
  • .( 在 C# 或 VB.Net 中合法吗?

    顺序可以吗 曾经出现在 C 或 VB Net 代码中吗 不在字符串 注释或 XML 文字中 EDIT 或预处理器指令 我相当肯定答案是否定的 但我想确定一下 唯一的地方 出现在语法中的有 real literal decimal digit
  • 使用非美国(欧洲)日内数据进行 zipline 回测

    我正在尝试让 zipline 使用非美国日内数据 并将其加载到 pandas DataFrame 中 BARC HSBA LLOY STAN Date 2014 07 01 08 30 00 321 250 894 55 112 105 1
  • 如何清除导航堆栈?

    我的应用程序中的导航有问题 我使用 xamarin forms 如何清理我的导航堆栈 不使用 Pop 和 Push 我可以查看完整的导航堆栈吗 在最新版本的 Xamarin Forms 中 您可以使用以下方式查看导航堆栈 Navigatio
  • oledb/ado.net:获取命令的文本,并替换所有参数

    是否可以获取文本OleDbCommand所有参数都替换为它们的值 例如 在下面的代码中我正在寻找一种获取查询文本的方法 SELECT FROM my table WHERE c1 hello and c2 world 当我完成参数分配后 v
  • WooCommerce 在可变价格后显示变量描述

    我正在尝试将变量描述显示到 woocommerce 产品页面中 我安装了一个名为 woocommerce 单选按钮的插件 用于将我的可变产品和价格显示为单选按钮而不是选择 我正在这个插件中编辑variable php文件 然后完成后我会将其
  • PHP - 从 MySQL 数据创建嵌套数组

    我有一些数据存储在表中 如下所示 id parent id name 1 0 Entry 1 2 0 Entry 2 3 0 Entry 3 4 1 Child of entry 1 我想将它变成一个嵌套数组 如下所示 array arra