相关疑难解决方法(0)

通过php查找一周的第一天

可能重复:
获取PHP中的第一天?

嗨,

我想查找本周和上周的第一个和最后一个日期.同样,我想查找当月和上个月的第一个和最后一个日期.

这必须在PHP中完成.请帮忙.

php datetime date

13
推荐指数
1
解决办法
3万
查看次数

如何查找给定日期所属的一周的第一天?

可能重复:
获取PHP中的第一天?

给定时间戳我需要找到时间戳所属的第一天.

例如

$format = "first day of week";

//convert to time
$time = strtotime("2011-07-01 00:00:00");

//format the time to the first day of the week
$date = strtotime($format,$time);

//Put the first day of the week into a pretty format
$weekStartDate = date("Y-m-d",$date);
Run Code Online (Sandbox Code Playgroud)

一周的开始应该等于2011-06-27,此时它已经出现了可怕的错误,并且等于1970-01-01,这表明我的"一周的第一天"格式无效.

任何想法将非常感谢,谢谢,

php date strtotime

9
推荐指数
1
解决办法
1万
查看次数

PHP DateTime()类,将一周的第一天更改为星期一

只要您所在国家/地区的第一天是星期日,PHP(5.3+)中的DateTime类就可以正常工作.在荷兰,一周的第一天是星期一,这使得课程无法用于构建具有周视图和计算的日历.

我似乎无法在Stackoverflow或其他互联网上找到关于如何让DateTime行动的答案,就像一周的第一天是星期一一样.

我在Stackoverflow上找到了这个部分,但它并没有解决你遇到麻烦的所有方法,而且这不是一个优雅的解决方案.

$dateTime = new DateTime('2012-05-14');
$monday = clone $dateTime->modify(('Sunday' == $dateTime->format('l')) ? 'Monday last week' : 'Monday this week');
Run Code Online (Sandbox Code Playgroud)

有没有办法改变这个或扩展DateTime?无法想象这不是一个场景,因为大多数欧洲星期一开始他们的周.

补充: 发布完整的日历和功能代码不会让事情变得更清晰.但这里有一行例如.我经常要检查一周的第一天是什么,或者从一周的第一天计算到该周的不同日期和时间.我的代码充满了这些:

$startOfWeek = $date->modify(('Sunday' == $date->format('l')) ? 'Monday last week' : 'Monday this week')->modify('+3 hours')->format(DATETIME);
Run Code Online (Sandbox Code Playgroud)

我也得到了一个不想要的结果,试图获得一个月或一年的第一个完整周.由于我的$ date对象并不总是包含相同的日期,我必须以这种方式继续检查它,使代码难以阅读.在这个日历上有更多的编程要做,我无法预见它会再次发生错误.

编辑虽然存在一些不一致之处.由于一些奇怪的原因,DateTime确实得到了下一个权利:

$test = new DateTime('2012-10-29'); // Monday
echo $test->modify('Sunday this week')->format('Y-m-d');  // 2012-11-04

// But...

$test = new DateTime('2012-11-04'); // Sunday
echo $test->modify('Monday this week')->format('Y-m-d');  // 2012-11-05 instead of 2012-10-29   
Run Code Online (Sandbox Code Playgroud)

但我认为我可以使问题更清楚: DateTime()类可以与星期一一起用作一周的第一天.如果没有,可以将课程扩展为使用星期一作为一周的第一天.

更新: 好的,我想我已经到了某个地方......我不是编程班的专业人员......但这似乎有效数星期.但它仍然需要第一天,第二天的规则......以及星期日本身的日期.我不认为这是万无一失的.我将不胜感激任何修复它的帮助.

class EuroDateTime extends DateTime { …
Run Code Online (Sandbox Code Playgroud)

php datetime class

8
推荐指数
1
解决办法
2万
查看次数

根据区域设置查找第一天和上周的日期

我试图根据语言环境找到第一天和最后一周的日子.在周日的美国周开始,但在其他国家,它可能在星期一甚至星期六开始.

setlocale(LC_ALL, "en_US.UTF-8");
date_default_timezone_set("America/New_York");

$start_week = (new DateTimeImmutable());
$start_week = $start_week->modify('this week');
$end_week = $start_week->modify('this week +6 days');

$interval = new DateInterval('P1D');
$week_range = new DatePeriod($start_week, $interval, $end_week);

foreach($week_range as $week_day) {
  // $week_day starts with Monday, supposed to be Sunday
}
Run Code Online (Sandbox Code Playgroud)

php datetime

6
推荐指数
1
解决办法
700
查看次数

PHP"本周第一次约会"上个月回归

运行

var_dump(new \DateTime('first day of this week'));
Run Code Online (Sandbox Code Playgroud)

返回9月1日

https://3v4l.org/GIPKR

这是一个错误,有没有解决方法?

在此输入图像描述

php date

5
推荐指数
1
解决办法
160
查看次数

当给出日期时如何在php中获取该周的星期一的日期

可能重复:
获取PHP中的第一天?

当给出日期时,我应该得到那个星期一的星期日.

当2012-08-08被授予时,应该返回2012-08-06.

php datetime date

4
推荐指数
2
解决办法
9478
查看次数

获得一年中给定周数的"Ymd"的第一天

我试图根据输入一周的数字和年份来获得给定周的第一天.我目前正在使用这个当前的一周和一年,并像一个魅力.

$week = date('W');
$year = date('Y');
$date1 = date('Y-m-d', strtotime($year."W".$week.'1'));
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试输入我自己的一周和一年时,它不起作用

$week = 7;
$year = 2013;
$date1 = date('Y-m-d', strtotime($year."W".$week.'1'));
Run Code Online (Sandbox Code Playgroud)

如果字符串我应该用于strtotime是什么类型的?怎么提供我自己的约会不起作用?

php format datetime date

4
推荐指数
1
解决办法
8143
查看次数

计算当周星期一的日期

目标:如果当前星期几是星期一以外的任何一天,则显示当前星期一的日期.如果当周的当天是星期一,只需显示今天的日期.

**这是我写的,我认为它有效,但可能不是确定日期最干净的方法.话虽如此,有没有人看到代码错误或不起作用的原因?**

<?php
date_default_timezone_set("America/New_York");
$day = date("w");
if( $day == 1 ) {$day -= 0;}
if( $day == 2 ) {$day -= 1;}
if( $day == 3 ) {$day -= 2;}
if( $day == 4 ) {$day -= 3;}
if( $day == 5 ) {$day -= 4;}
if( $day == 6 ) {$day -= 5;}
if( $day == 0 ) {$day -= 6;}
$calc = mktime(0,0,0,date("m"),date("d")-$day,date("Y"));
echo date("m/d/Y",$calc)."<br>";
echo "start date of work week is: ".date("m/d/Y", $calc);
?>
Run Code Online (Sandbox Code Playgroud)

php date mktime

3
推荐指数
1
解决办法
1万
查看次数

PHP获取星期一这个星期的日期

有没有办法2013-05-29在PHP中采用这样的日期并获得星期一星期几的日期(格式相同)?所以输出将是这样的:2013-05-27

php date

0
推荐指数
1
解决办法
130
查看次数

标签 统计

php ×9

date ×7

datetime ×5

class ×1

format ×1

mktime ×1

strtotime ×1