donglin9068 2014-07-01 16:22
浏览 42
已采纳

PHP - 使用父级创建评论列表

I have table structure like this:

id_comment
body
date_created
date_updated    
user_id
parent_id

and for now this function:

public function comments_list($comments)
    {
        $comments_list = "";
        foreach ($comments as $c) :
            if($c['parent_id'] == 0) :
                $comments_list .= '<div class="comment level-0">';
                $comments_list .= $c['body'];
                $comments_list .= '</div>';
            endif;
        endforeach;


    }

$comments is the array with all the comments (2d array). $c['parent_id'] == 0 is parent comment. Child comment have parent_id set to id of the parent comment. How can I create comment list with parent/child relationship?

Comments structure:

array(5) {
  [0]=>
  array(9) {
    ["id_comment"]=>
    string(1) "1"
    ["body"]=>
    string(532) "Odio lectus hac odio ultrices vel diam hac elementum amet et scelerisque porttitor nunc elementum. Sit nunc turpis! Porttitor, odio massa nisi turpis porttitor aliquam aliquam proin! Tincidunt dapibus adipiscing sagittis adipiscing odio velit eros nisi tortor porttitor ut elit enim amet egestas porta. Massa. Nec tortor aliquet sed ultrices dignissim massa! Adipiscing tortor, pulvinar ultricies, lectus adipiscing sagittis, a tortor sit magna integer. Scelerisque hac amet amet habitasse et turpis integer nisi sagittis ridiculus."
    ["date_created"]=>
    string(19) "2014-07-01 00:00:00"
    ["date_updated"]=>
    string(19) "2014-07-02 02:34:51"
    ["post_id"]=>
    string(1) "4"
    ["user_id"]=>
    string(1) "1"
    ["parent_id"]=>
    string(1) "0"
    ["good_vote"]=>
    string(1) "0"
    ["bad_vote"]=>
    string(1) "0"
  }
  [1]=>
  array(9) {
    ["id_comment"]=>
    string(1) "2"
    ["body"]=>
    string(532) "Odio lectus hac odio ultrices vel diam hac elementum amet et scelerisque porttitor nunc elementum. Sit nunc turpis! Porttitor, odio massa nisi turpis porttitor aliquam aliquam proin! Tincidunt dapibus adipiscing sagittis adipiscing odio velit eros nisi tortor porttitor ut elit enim amet egestas porta. Massa. Nec tortor aliquet sed ultrices dignissim massa! Adipiscing tortor, pulvinar ultricies, lectus adipiscing sagittis, a tortor sit magna integer. Scelerisque hac amet amet habitasse et turpis integer nisi sagittis ridiculus."
    ["date_created"]=>
    string(19) "0000-00-00 00:00:00"
    ["date_updated"]=>
    string(19) "2014-07-02 02:34:54"
    ["post_id"]=>
    string(1) "4"
    ["user_id"]=>
    string(1) "1"
    ["parent_id"]=>
    string(1) "2"
    ["good_vote"]=>
    string(1) "0"
    ["bad_vote"]=>
    string(1) "0"
  }
  [2]=>
  array(9) {
    ["id_comment"]=>
    string(1) "3"
    ["body"]=>
    string(532) "Odio lectus hac odio ultrices vel diam hac elementum amet et scelerisque porttitor nunc elementum. Sit nunc turpis! Porttitor, odio massa nisi turpis porttitor aliquam aliquam proin! Tincidunt dapibus adipiscing sagittis adipiscing odio velit eros nisi tortor porttitor ut elit enim amet egestas porta. Massa. Nec tortor aliquet sed ultrices dignissim massa! Adipiscing tortor, pulvinar ultricies, lectus adipiscing sagittis, a tortor sit magna integer. Scelerisque hac amet amet habitasse et turpis integer nisi sagittis ridiculus."
    ["date_created"]=>
    string(19) "0000-00-00 00:00:00"
    ["date_updated"]=>
    string(19) "2014-07-02 02:34:56"
    ["post_id"]=>
    string(1) "4"
    ["user_id"]=>
    string(1) "1"
    ["parent_id"]=>
    string(1) "3"
    ["good_vote"]=>
    string(1) "0"
    ["bad_vote"]=>
    string(1) "0"
  }
  [3]=>
  array(9) {
    ["id_comment"]=>
    string(1) "4"
    ["body"]=>
    string(532) "Odio lectus hac odio ultrices vel diam hac elementum amet et scelerisque porttitor nunc elementum. Sit nunc turpis! Porttitor, odio massa nisi turpis porttitor aliquam aliquam proin! Tincidunt dapibus adipiscing sagittis adipiscing odio velit eros nisi tortor porttitor ut elit enim amet egestas porta. Massa. Nec tortor aliquet sed ultrices dignissim massa! Adipiscing tortor, pulvinar ultricies, lectus adipiscing sagittis, a tortor sit magna integer. Scelerisque hac amet amet habitasse et turpis integer nisi sagittis ridiculus."
    ["date_created"]=>
    string(19) "0000-00-00 00:00:00"
    ["date_updated"]=>
    string(19) "2014-07-02 02:34:59"
    ["post_id"]=>
    string(1) "4"
    ["user_id"]=>
    string(1) "0"
    ["parent_id"]=>
    string(1) "1"
    ["good_vote"]=>
    string(1) "1"
    ["bad_vote"]=>
    string(1) "0"
  }
  [4]=>
  array(9) {
    ["id_comment"]=>
    string(1) "5"
    ["body"]=>
    string(532) "Odio lectus hac odio ultrices vel diam hac elementum amet et scelerisque porttitor nunc elementum. Sit nunc turpis! Porttitor, odio massa nisi turpis porttitor aliquam aliquam proin! Tincidunt dapibus adipiscing sagittis adipiscing odio velit eros nisi tortor porttitor ut elit enim amet egestas porta. Massa. Nec tortor aliquet sed ultrices dignissim massa! Adipiscing tortor, pulvinar ultricies, lectus adipiscing sagittis, a tortor sit magna integer. Scelerisque hac amet amet habitasse et turpis integer nisi sagittis ridiculus."
    ["date_created"]=>
    string(19) "0000-00-00 00:00:00"
    ["date_updated"]=>
    string(19) "2014-07-02 02:35:02"
    ["post_id"]=>
    string(1) "4"
    ["user_id"]=>
    string(1) "1"
    ["parent_id"]=>
    string(1) "0"
    ["good_vote"]=>
    string(1) "0"
    ["bad_vote"]=>
    string(1) "0"
  }
}
  • 写回答

2条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥15 结构体数组文件读取问题
      • ¥15 写c++代码,第7题说一下使用的计算方法
      • ¥15 postman接口自动化测试报告实践总结
      • ¥15 有关c++的问题,利用相关知识
      • ¥15 求香农编码和解码的matlab代码
      • ¥20 ROS中的TEB局部规划问题
      • ¥20 关于#matlab#的问题:要求测出上面图片中所有同心圆的半径
      • ¥20 epanet软件运行问题
      • ¥15 Python 文件读取
      • ¥60 dpabi进行Alff计算时脑池有干扰信号