- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的表结构:
CREATE TABLE menu (
menuid int(11) NOT NULL AUTO_INCREMENT,
menuname varchar(100) NOT NULL DEFAULT '',
menulink varchar(100) NOT NULL DEFAULT '',
menuparentId int(11) NOT NULL DEFAULT '0',
menuhasChild smallint(1) NOT NULL DEFAULT '0',
menustatus smallint(1) NOT NULL DEFAULT '1',
menuorder int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (menuid)
)
我正在使用递归函数由此创建菜单结构,但在这里失败了:
function categoriesTree($id=0){
$s = "SELECT * FROM menu WHERE menuparentId = '".$id."'
ORDER BY menuorder, menuid ";
$rid = $this->db->query($s)->result_array();
$treeArray = array();
foreach($rid as $row){
$treeArray[$row['menuid']] = $row;
if($row['menuhasChild']==1){
$treeArray[$row['menuid']] = $this->categoriesTree(); //results in Fatal error: Maximum function nesting level of '100' reached, aborting!
}
}
retrun $treeArray;
}
此方法是 CodeIgniter 模型类中模型的一部分。有没有更好的方法来创建树?
最佳答案
是的,有更好的方法。所谓修正的先序树遍历算法。您可以通过谷歌搜索找到大量信息,而且我确信堆栈溢出也是如此。
好处是您可以仅使用 1 个查询来获取整个子树。 SELECTS 会很快,但修改会更重。
关于创建树结构所需的 PHP 递归帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5961377/
我有一个依赖于包 B 的包 A。当包 A 中的代码运行并访问包 B 中的类时,包 B 的状态将被解析 (4),而不是 Activity (32) 和包 B 的激活器也没跑好。我认为 bundle B
这个问题在这里已经有了答案: How to remove the space between inline/inline-block elements? (41 个回答) 关闭 7 年前。
我正在尝试使用 Java OpenAL 库。我在导入名为 libsoft_oal.so 的 native 库时遇到问题。 Java OpenAL 依赖于 OpenAL 软实现。我尝试根据他们在 git
我正在尝试启动我的应用程序。是一个 unicorn +工头+sinatra的应用。 这是我的 config.ru 文件: require "rubygems" require "sinatra" Bu
我有一个下拉列表,其中包含一些从数据库表中检索的值,我想要的是当单击按钮时它应该只获得选项标签的中间值,但只有那些类名为“get_this”的选项标签并离开那些选项,如果他们没有这个类 预期输出:值
我有一个index.php文件,需要一个通用的head.php文件,head.php文件中有几个Javascript文件,当这样尝试时,代码在源代码中看起来很好,但文件却不是实际上对文档做任何事情。
有人能帮帮我吗? 我已经像这样运行了 imsmod: $ insmod /data/mm/mmdev.ko epoll_rate=100 但是我得到一个错误: insmod: init_module
是否有键盘快捷键或插件可以在 Notepad++ 中打开 PHP 所需或包含的文件?我知道,在 Dreamweaver 中,执行此操作的命令是 Ctrl+D,但我似乎无法在 Notepad++ 中找到
我已经用 js 设置了一个显示/隐藏 div,但我很难弄清楚如何一次显示一个 div。目前发生的情况是,除非我再次单击原始链接来关闭该 div,否则每个 div 都会显示。 http://www.li
当我尝试将未分配的辅助分片分配给节点时出现错误。 { "error": { "root_cause": [ { "type": "remote_transpor
我正在构建一个 C++ 应用程序,使用 Netbeans 6.9 作为我的 IDE。我有一个 C++ 库,它是一个纯 C 库的包装器。 我已将文件正确添加到项目中(使用添加库文件选项)。这是 g++
我是一名优秀的程序员,十分优秀!