我想在实际日期示例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>
问题是在第二天它重复这段代码&#34; echo&#34; $ fecha_menos24hs&#34 ;; &#34;因为每个人,可能是你可以推荐我一个更好的主意..我不知道两个foreachs ..
感谢您的时间。
答案 0 :(得分: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; ?>