|
php下按上下级层次关系输出内容,需要的朋友可以参考下。
复制代码 代码如下: function getSubComments($parent = 0, $level = 0) { $db = &JFactory::getDBO();
$sql = "..."; // 查询记录的SQL $db->setQuery($sql); $rows = $db->loadObjectList();
$list = array();
// 先从数据得到记录集,再对记录添加level, 父层level = 0,它的下级level = 1,如此类推 foreach ($rows as $row) { $row->level = $level; $list[] = $row;
$tmpArr = getSubComments($row->id, $level + 1); // 递归调用 if (count($tmpArr)) { foreach ($tmpArr as $tmpRow) { $list[] = $tmpRow; } } }
return $list; }
$list = array(); foreach ($tmpList as $row) { $row->level = 0; $list[] = $row; $tmpList2 = getSubComments($row->id, 1); foreach ($tmpList2 as $row2) { $list[] = $row2; } }
// 按level分层次输出内容 if ($row->level) { $pre = ''; for ($n = 0; $n < $row->level; $n++) $pre .= '----';
echo $pre . '|- '; } echo strip_tags($row->content);
|
|