[英]Date order 2 days ahead
$datetime = new \DateTime();
$listItem = array('<li">', '</li>');
$listItem_active = array('<li class="active-day">', '</li>');
$i = 0;
while (true) {
if ($i === 5) break;
if ($datetime->format('N') === '7' && $i === 0) {
$datetime->add(new \DateInterval('P1D'));
continue;
}
if($i===0){
$today = $datetime->format('D d-m');
}
if($i===3){
echo $listItem_active[0] . $today . $listItem_active[1];
}
if($i!=0){
echo $listItem[0] . $datetime->format('D d-m') . $listItem[1];
}
$listItem = array('<li>', '</li>');
$datetime->add(new \DateInterval('P1D'));
$i++;
}
我有上面的代碼,它幾乎是正確的,但輸出並不是我想要的。 我得到以下輸出:
當天應始終處於中間位置。 你可以看到這個有效。 但是日子的順序並不像我想的那樣。 我想要的順序是這樣的:
你可以使用strtotime
來獲得這些結果,代碼會更短。
例如:
for ($i = 2; $i > -3; $i--)
{
echo date('D d-m', strtotime($i . ' days ago')) . '<br />';
}
將輸出:
Tue 16-05
Wed 17-05
Thu 18-05
Fri 19-05
Sat 20-05
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.