按上下级层次关系输出内容的PHP代码
作者:bea
代码如下: function getSubComments($parent = 0, $level = 0) { $db = &JFactory::getDBO(); $sql = "..."; // 查询记录的SQL $db->setQuery($sql); $rows = $db->loadObjectList(); $list = array(); // 先从数据得到记录集,再对记录添加level, 父层level = 0,它的
代码如下:
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);
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- PHP IN_ARRAY 函数使用注意事项
- PHP STRING 陷阱原理说明
- PHP下操作Linux消息队列完成进程间通信的方法
- php抓取页面与代码解析 推荐
- 由php的call_user_func传reference引发的思考
- Google Voice 短信发送接口PHP开源版(2010.5更新)
- PHP 飞信好友免费短信API接口开源版
- PHP计划任务之关闭浏览器后仍然继续执行的函数
- PHP垃圾回收机制简单说明
- PHP多线程抓取网页实现代码
- php上传文件的增强函数
- php 模拟POST|GET操作实现代码
- UCenter中的一个可逆加密函数authcode函数代码
- PHP连接SQLServer2005 的问题解决方法
- 在Windows系统上安装PHP运行环境文字教程
- ajax实现无刷新分页(php)
- php将会员数据导入到ucenter的代码
- php 无限级数据JSON格式及JS解析
- php下使用strpos需要注意 === 运算符