草庐IT

dateTime

全部标签

php - 如何根据开始时间和持续时间计算结束时间?

我正在构建一个事件日历并将开始时间传递给PHP,格式为2009-09-2515:00:00。持续时间也会过去,格式可能是60分钟或3小时。从小时转换为分钟不是问题。如何将时间长度添加到已建立的起点以正确设置结束时间的格式? 最佳答案 如果你有足够高的版本号,简单的方法:$when=newDateTime($start_time);$when->modify('+'.$duration);echo'Endtime:'.$when->format('Y-m-dh:i:s')."\n"; 关于

php - 我如何在 php 中确定给定日期的第 n 个工作日

我正在编写一个日历脚本,我需要在其中重复一个日历事件,例如“在每个月的第一个星期二重复”在上面的例子中。你如何获得“第一”?例如,今天是2009年6月12日,这意味着它是“六月的第二个星期五”我如何获得“第二个”?提前致谢 最佳答案 除以7并向上取整:ceil(date('j')/7); 关于php-我如何在php中确定给定日期的第n个工作日,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/quest

php - 使用 PHP 的 DateTime 警告

这个问题在这里已经有了答案:"date():Itisnotsafetorelyonthesystem'stimezonesettings..."(25个答案)关闭6年前。我有这个代码:try{$datetime1=newDateTime("now");$datetime2=newDateTime("now");$interval=$datetime1->diff($datetime2);var_dump($interval);}catch(Exception$e){echo$e->getMessage();}我没有看到关于var_dump的任何结果,php的输出是:DateTime::

PHP 比较日期时间值

在我的PHP应用程序中,我尝试比较日期时间值,如下所示:if($datetime_from_db两个值的格式相同。我不明白的是为什么它只比较日期而忽略时间。日期和时间值对我来说都很重要,但我不知道如何让它发挥作用。 最佳答案 将string(如"2011-02-1415:46:00")与另一个string进行比较实际上并没有比较dates,它根据stringparsingnumericrules比较两个字符串.您将需要比较实际的数字时间戳:strtotime($datetime_from_db)

php - 使用 DateTime 字符串对数组进行排序?

我如何在PHP中根据end_time值对这个数组(最近的项目排在第一位)进行高效排序?array0=>array'value'=>int4'end_time'=>string'2012-01-20T08:00:00+0000'(length=24)1=>array'value'=>int0'end_time'=>string'2012-01-21T08:00:00+0000'(length=24)2=>array'value'=>int5'end_time'=>string'2012-01-22T08:00:00+0000'(length=24)3=>array'value'=>int

PHP:带时区的 DateTime::createFromFormat()

我想将日期形式从d/m/Y转换为具有时区偏移量的Y-m-d。我可以使用以下代码将d/m/Y转换为Y-m-d:$date=DateTime::createFromFormat('d/m/Y',$date);$date=$date->format('Y-m-d');但我不确定如何添加时区偏移量。 最佳答案 (PHP5>=5.3.0)你实际上输入了第三个参数publicstaticDateTimeDateTime::createFromFormat(string$format,string$time[,DateTimeZone$timez

日期之间的 PHP DateTime 差异问题

$start=newDateTime('2014-01-07',newDateTimeZone('UTC'));$end=clone$start;$start->sub(newDateInterval('P1M'));//substractonemonthecho$start->format('Y-m-d').'-'.$end->format('Y-m-d');//2013-12-07-2014-01-07-seemscorrect,let'sgetnumberofdays...print_r($end->diff($start));//DateIntervalObject([y]=>

php - Symfony + Doctrine Oracle DateTime 格式问题

我在Symfony2.7+Doctrine中遇到OracleDateTime类型的问题。我有一个带有DateTime列的表,它通过Doctrine在Symfony中映射。当我尝试保留相关实体时,出现以下错误:Couldnotconvertdatabasevalue"31-MAY-1603.56.49.000000PM"toDoctrineTypedatetime.Expectedformat:Y-m-dH:i:sFile:.../vendor/doctrine/dbal/lib/Doctrine/DBAL/Types/ConversionException.phpLine:63我无法更

php - 无法解决此错误:调用未定义的方法 DateTime::createFromFormat()

我正在尝试在php中转换日期格式。以下代码会产生持久性错误$myDate="31/12/1980";$myDateTime=DateTime::createFromFormat('d/m/Y',"$myDate");$newDate=$myDateTime->format('dMY');echo$newDate;包含createFromFormat()的行不断产生错误:““调用未定义的方法”。我的测试Apache服务器和实际服务器都会发生这种情况,它们都运行PHP5.3+我是否需要包含或要求额外的文件?请帮忙-我只是php的中级水平。 最佳答案

php - 如何判断一个时区是否在一年中的任何时间遵守夏令时?

在PHP中,您可以使用如下内容判断给定日期是否在夏令时期间:$isDST=date("I",$myDate);//1or0问题是这只会告诉您某个时间点是否在DST中。有没有一种可靠的方法可以随时检查该时区的DST是否生效?编辑以澄清:澳大利亚布里斯类在一年中的任何时候都不实行夏令时。全年都是GMT+10。澳大利亚悉尼从10月到次年3月从GMT+10变为GMT+11。我想知道是否有一些现有的方法,或者一种方法来实现这样工作的方法:timezoneDoesDST('Australia/Brisbane');//falsetimezoneDoesDST('Australia/Sydney')