第二天创建七个日历

时间:2018-02-13 23:29:52

标签: php

我想在第二天画出永久日历

$dt = new DateTime;
if (isset($_POST['annee']) && isset($_POST['semaine'])) {
    $dt->setISODate($_POST['annee'], $_POST['semaine']);
} else {
    $dt->setISODate($dt->format('o'), $dt->format('W'));
};
$annee= $dt->format('o');
$semaine= $dt->format('W');

$KlendrierPerpetuel="";
$KlendrierPerpetuel.='<table><tr>';
do {
    $KlendrierPerpetuel.='<td>'.$dt->format('D').'</td>';
    $dt->modify('+1 day');
} while ($semaine == $dt->format('W'));
$KlendrierPerpetuel.='</tr></table>';
echo $KlendrierPerpetuel;

它创建一周中的表格宽度而不是第二天的<7>

2 个答案:

答案 0 :(得分:1)

嗯......它实际上要简单得多......

$format = "y/m/d";
$date_arr = [];
for($i = 0; $i < 6; $i ++){
    if($i = 0)
        $date_arr[] = date($format);
    else
        $date_arr[] = date($format, strtotime("+$i day");
}

strtotime可以从字符串中解析日期,例如&#34; + 1天&#34;或者&#34; +1周&#34;,所以第二天很简单。所以你只需要循环这个过程并完成它。

PS:在您的初始帖子中,您似乎获得了一些帖子参数,您只需将它们放在if中的strtotime()

答案 1 :(得分:1)

您正在寻找的内容并不完全清楚,但我最好的猜测并添加了用户控件来实现它。您应该能够根据自己的需要进行修改:

<html>

<form method='post'>
    <input type='numeric' name='year' value='<?= $_POST['year'] ?: date('Y') ?>'>
    <input type='numeric' name='week' value='<?= $_POST['week'] ?: date('W') ?>'>
    <input type='submit'>
</form>

<?php

$dt = new DateTime;
if (isset($_POST['year']) && isset($_POST['week'])) {
    $dt->setISODate($_POST['year'], $_POST['week']);
} else {
    $dt->setISODate($dt->format('o'), $dt->format('W'));
};
$year= $dt->format('o');
$week= $dt->format('W');

$KlendrierPerpetuel="";
$KlendrierPerpetuel.='<table><tr><td>'.$dt->format('M').'</td>';                                                                                                                                                                                                                                       
do {
    $KlendrierPerpetuel.='<td>'.$dt->format('d').'<br>'.$dt->format('D').'</td>';
    $dt->modify('+1 day');
} while ($week == $dt->format('W'));
$KlendrierPerpetuel.='<td>'.$dt->format('M').'</td></tr></table>';
echo $KlendrierPerpetuel;

这允许用户指定年份和周数,并显示该周的日期。