function generateTree($items) { $items = Db::name('tree')->column('id,pid,name'); $tree = array(); foreach ($items as $item) { if (isset($items[$item['pid']])) { $items[$item['pid']]['son'][] = &$items[$item['id']]; } else { $tree[] = &$items[$item['id']]; } } return $tree; } $tree = generateTree(0); function getTreeData($tree) { foreach ($tree as $t) { echo "<li><span><i " . "class=\"icon-minus-sign\"></i>" .$t["name"]. "</span>\n<a href=\"info.php?id=".$t["id"]."\" target=\"_blank\">详细</a><ul>\n"; if (isset($t['son'])) { getTreeData($t['son']); } echo "</ul>\n</li>\n"; } } $list = getTreeData($tree); $this->assign('list',$list); return $this->view->fetch(); }
Die statische Datei sieht so aus
Sie wird direkt an
außer Kontrolle ausgegeben. Wenn Sie Variablen
verwenden, um nur eine Ebene auszugeben, gibt es keine weitere.
Meister, bitte bringt mir das Schreiben bei, danke.
你那不是不受控制,是这个函数echo了,直接删除echo即可,数组直接用变量返回
直接在视图里拼接
页面啥都别写,直接打印控制器传输过来的变量,看看是什么