Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.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_Calendar_Timestamp - Fatal编程技术网

PHP使用时间戳确定周

PHP使用时间戳确定周,php,date,calendar,timestamp,Php,Date,Calendar,Timestamp,我正在构建一个PHP日历,它有一个星期视图和一个主要的月份视图。 我有一个数据库,它存储了每天的所有事件,并在月初加载所有事件 月视图是完整的,工作正常,让我向您展示它是如何工作的: 要撤消当月所有事件的查询: WHERE a.target_date BETWEEN $month_start AND $month_end $source_date = mktime(0,0,0,$month,1,$year); $days_in_month = date("t",$source_

我正在构建一个PHP日历,它有一个星期视图和一个主要的月份视图。 我有一个数据库,它存储了每天的所有事件,并在月初加载所有事件

月视图是完整的,工作正常,让我向您展示它是如何工作的:

要撤消当月所有事件的查询:

WHERE a.target_date BETWEEN $month_start AND $month_end

    $source_date = mktime(0,0,0,$month,1,$year);
    $days_in_month = date("t",$source_date);
    $month_start = mktime(0,0,0,$month,1,$year);
    $month_end = mktime(23,59,0,$month,$days_in_month,$year);
请注意,$month和$year是在URL中确定的,因此这不是问题

我的问题是,我希望用同样的逻辑来撤回我在本周的所有事件。 然而,我不确定如何才能做到这一点

我可以通过以下代码找到本月的周数:

$current_date = time();
$current_date = date("Y-m-d",$current_date);
$week = get_weeks($current_date, "monday");

获取当前周的所有事件:

$dt=新日期时间; $dt->setISODate$dt->format'o',$dt->format'W'; 埃科斯普林特 在“%s”和“%s”之间, $dt->格式“Y-m-d 00:00:00”, $dt->修改“+6天”->格式“Y-m-d 23:59:59” ;
看看手册:看看最新的'N';它代表了工作日arjan的天数,我已经知道了这一点和日期J:问题是检测我们在一周的哪5天,在MONTHThanks内很多,但我不确定如何不重复这些,而是将开始和结束日期存储在两个不同的变量中?问题是,假设我明天运行这段代码,从星期二开始算不算6天?这意味着我在星期一结束,而不是星期天/否。请参阅->setISODate的文档,您将看到该日期将被设置为此方法的第三个参数星期一,默认情况下为1=星期一,无论当前星期的日期是什么。