我有一个问题,我还没有找到解决方案。我的博客中有一个存档,如下所示:
May[2014]
-Title 1 article
May[2014]
-Title 2 article
April[2014]
-Title 3 article
但是我想要在同一个月有一篇或多篇文章发表这样的文章:
May[2014]
-Title 1 article
-Title 2 article
May[2014]
Title 3 article
我的代码:
<?php if ($archive): $_month = '0000-00'; ?>
<?php foreach($archive as $a):?>
<div class="archive">
<div class="month">
<?php if (date('Y-m', strtotime($a['date'])) !== $_month) :?>
+ <?php echo date('M',strtotime($a['date']))?> [<?php echo date("Y",strtotime($a['date']))?>]
<div class="month-article last-article-content">
<span class="most-popular-articles"><img src="<?php echo config_item('base_url');?>assets/images/arrow.png">  <a href="<?php echo base_url('materials/'.$a['id'].'/'.make_permalink($a['title'])).'.html'; ?>"><?php echo ($a['title']) ?></a></span>
</div>
<?php endif; ?>
<?php $_month = date('Y-m',strtotime($a['date'])) ?>
</div>
</div>
<?php endforeach; ?>
<?php endif; ?>
答案 0 :(得分:0)
$a['date']+1
无法正常运作。
您必须创建一个包含上一个日期的变量,假设您的文章按日期排序。
<?php
$_month = '0000-00';
foreach ($articles as $a) :
if (date('Y-m', strtotime($a['date'])) !== $_month) {
echo date('M',strtotime($a['date']));
}
...
$_month = date('Y-m', strtotime($a['date']));
endforeach;
?>