0

我想按实际日期示例 08/02 列出 x 事物的列表,然后在另一个列表中列出 07/02 的 x 事物,日期保存在 bd 这是我尝试做的一些代码..

 <h1 id="date-title"><?php echo $fecha1 ?></h1>
            <div id="news-block">
                <?php
                $nombre=null;
                foreach ($programas as $programa) {
            if($programa->ingreso==Date("Y-m-d")){
                    if ($programa->nombre!= $nombre) {
                        $nombre = $programa->nombre;
                        echo "<h3 id='news-title'>".$programa->nombre."</h3>";
                    }
                    echo "<ul id='news-content'>";
                    echo $programa->titulo;
                    echo " </ul>";
               }else
               {
                $fecha_menos24hs = date('m-d',time()-(24*60*60));
                 echo "<h1 id='date-title'>$fecha_menos24hs</h1>"; 
                if ($programa->nombre!= $nombre) {
                        $nombre = $programa->nombre;
                        echo "<h3 id='news-title'>".$programa->nombre."</h3>";
                    }
                    echo "<ul id='news-content'>";
                    echo $programa->titulo;
                    echo " </ul>";

               }
            }

            ?>
           </div>

问题是在第二个日期它重复此代码“echo”$fecha_menos24hs“;”因为对于每个,可能你能推荐我一个更好的主意..我不知道两个 foreachs..

谢谢你的时间。

4

1 回答 1

0

我最好的猜测是你正在寻找这个输出或类似的东西:

<h1 class="date_title">Date</h1>
<div class="news_block">
    <h3>News Title</h3>
    <ul class="news_content">
        <li>Article Content</li>
    </ul>
</div>
<div class="news_block">
    <h3>News Title #2</h3>
    <ul class="news_content">
        <li>Article Content</li>
    </ul>
</div>
<h1 class="date_title">Date #2</h1>
....

我能想到的最简单的方法是在控制器中重构 SQL 结果。

//Ordering by the date with newest first
$this->db->order_by('DATE_COLUMN', 'DESC');
$results = $this->db->get()->result_array();
$article_list = array(array());
foreach ($results as $key)
{
    $article_list[$key['DATE_COLUMN']][] = $key;
}
$this->data['articles'] = $article_list;
$this->load->view('DISPLAY', $this->data);

然后我会在你的视图中使用几个循环来获得你的结果。

<?php foreach($articles as $key => $value): ?>
<h1 class="date-title">$key</h1>
    <?php foreach($value as $key2): ?>
<div class="news_block">
    <h3><?php echo $key2['title']; ?></h3>
    <ul class="news_content">
        <?php echo $key2['content']; ?>
    </ul>
</div>
    <?php endforeach; ?>
<?php endforeach; ?>
于 2013-02-08T20:20:49.953 回答