Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP获取特定工作日的重复日期_Php_Date - Fatal编程技术网

PHP获取特定工作日的重复日期

PHP获取特定工作日的重复日期,php,date,Php,Date,如何获取所选周的所有重复日期 例如,今天是2017年2月15日星期三,如果我选择星期四如何从下周四开始获得接下来的5个日期,如: $dates = array( [0] => "16/02/2017", [1] => "23/02/2017", [2] => "02/03/2017", [3] => "09/03/2017", [4] => "16/03/2017"); 如果我选择星期二,则获取2017年2月21日开始的日期,即下一个星期二可用于生成此日期的时间戳

如何获取所选周的所有重复日期

例如,今天是2017年2月15日星期三,如果我选择
星期四
如何从下周四开始获得接下来的5个日期,如:

$dates = array(
[0] => "16/02/2017",
[1] => "23/02/2017",
[2] => "02/03/2017",
[3] => "09/03/2017",
[4] => "16/03/2017");
如果我选择星期二,则获取2017年2月21日开始的日期,即下一个星期二

可用于生成此日期的时间戳,该函数可生成实际日期

<?php

    // Array for dates
    $dates = [];

    // Get next thursday
    $date = strtotime('thursday');
    $dates[] = $date;

    // Get the next four
    for ($i = 0; $i < 4; $i++)
    {
        $date = strtotime('+1 week', $date);
        $dates[] = $date;
    }

    // Echo dates
    foreach ($dates as $date)
        echo date('Y-m-d', $date);
您可以使用生成此日期的时间戳,该函数可以生成实际日期

<?php

    // Array for dates
    $dates = [];

    // Get next thursday
    $date = strtotime('thursday');
    $dates[] = $date;

    // Get the next four
    for ($i = 0; $i < 4; $i++)
    {
        $date = strtotime('+1 week', $date);
        $dates[] = $date;
    }

    // Echo dates
    foreach ($dates as $date)
        echo date('Y-m-d', $date);
看一看

利用这一想法:

//Get First Thursday
$date = new DateTime();
$date->modify('next thursday');

echo "<br/>Starting Thursday: " . $date->format('d/m/Y');

//Loop over next 4 Thursdays
for($i = 2; $i <= 5; $i++)
{
    $date->modify('+7 days');
    echo "<br/>Thursday " . $i . ": " . $date->format('d/m/Y');
}
//第一个星期四
$date=新的日期时间();
$date->modify(‘下周四’);
echo“
从周四开始:”$日期->格式('d/m/Y'); //在接下来的4个星期四循环 对于($i=2;$i修改(“+7天”); echo“
星期四“$i.”:“$date->格式('d/m/Y'); }
看一看

利用这一想法:

//Get First Thursday
$date = new DateTime();
$date->modify('next thursday');

echo "<br/>Starting Thursday: " . $date->format('d/m/Y');

//Loop over next 4 Thursdays
for($i = 2; $i <= 5; $i++)
{
    $date->modify('+7 days');
    echo "<br/>Thursday " . $i . ": " . $date->format('d/m/Y');
}
//第一个星期四
$date=新的日期时间();
$date->modify(‘下周四’);
echo“
从周四开始:“.$date->格式('d/m/Y'); //在接下来的4个星期四循环 对于($i=2;$i修改(“+7天”); echo“
星期四“$i.”:“$date->格式('d/m/Y'); }
您应该研究使用\DateTime对象和使用\DateInterval为一周的
add
方法。您应该研究使用\DateTime对象和使用\DateInterval为一周的
add
方法。