草庐IT

Datetime

全部标签

PHP 使用 DatePeriod 创建带休息时间的时间段

我想创建有开始时间、结束时间和休息时间的时间段。publicfunctiongetServiceScheduleSlots($duration,$break,$stTime,$enTime){$start=newDateTime($stTime);$end=newDateTime($enTime);$interval=newDateInterval("PT".$duration."M");$period=newDatePeriod($start,$duration,$end);foreach($periodas$dt){$periods[]=$dt->format('H:iA');}r

php 获取语言环境特定的日期格式

确定当前给定语言环境的短日期格式的最佳方法是什么?例如,如果我的脚本的语言环境设置为荷兰语,我想以某种方式获取该特定语言环境中使用的短日期格式,它将是:年月日如果设置为美国,我想获取美国语言环境中的日期格式:月/日/年等等…… 最佳答案 您可以使用Intl根据所选区域设置格式化日期的PHP扩展:$locale='nl_NL';$dateObj=newDateTime;$formatter=newIntlDateFormatter($locale,IntlDateFormatter::SHORT,IntlDateFormatter::

php - 如何使用 composer.phar install 解决问题

我正在尝试将composerinstall与symfony2一起使用。但是我一次又一次地遇到这个问题。当我运行时:phpcomposer.phpinstall我收到以下我不知道如何修复的错误:错误#1[Symfony\Component\Debug\Exception\ContextErrorException]Warning:date_default_timezone_get():Itisnotsafetorelyonthesystem'stimezonesettings.Youarerequiredtousethedate.timezonesettingorthedate_defa

php - PHP 函数 strtotime() 支持哪些日期格式?

我真的很喜欢PHP函数strtotime(),但是usermanual没有给出支持的日期格式的完整描述。它只给出了几个例子,例如“2000年9月10日”、“+1周2天4小时2秒”和“下周四”。我在哪里可以找到完整的描述? 最佳答案 我找不到官方的东西,但我看到了atutorial那说strtotime()使用GNU日期输入格式。那些都有详细描述intheGNUmanual.我注意到的一个差异是“下一个”与GNU手册中描述的行为。使用strtotime(),“下周四”将得到与“周四”相同的结果,除非今天是周四。如果今天是星期四,那么s

php - 使用 Zend Date 将当前日期插入 MySql

我有一个基于Zend框架的网站。有一个表格供用户填写,输入的数据被插入到数据库中。用户不输入日期/时间。我想根据当前日期/时间填充数据值。日期字段的类型为datetime。我不断收到以下错误消息:Notice:ArraytostringconversioninD:\wamp\www\CNFSORG\library\Zend\Db\Statement\Pdo.phponline228我已尝试执行以下操作:也试过做:如果有人能指出我正确的方向,我将不胜感激。提前致谢... 最佳答案 正确答案是你可以尝试用类似的东西从php创建一个当前时

php - DateTime::diff(DateTime [, bool absolute = false]) 中的绝对参数有什么作用

这是示例代码$c=newDateTime();$o=clone$c;$o->modify('-60days');$diff=$c->diff($o);$diff2=$c->diff($o,TRUE);var_dump($diff,$diff2);哪些输出object(DateInterval)#3(8){["y"]=>int(0),["m"]=>int(1),["d"]=>int(29),["h"]=>int(0),["i"]=>int(0),["s"]=>int(0),["invert"]=>int(1),["days"]=>int(60)}object(DateInterval)#

php - DateTime/DateInterval 每次刷新增加 25 小时会产生完全不同的结果

这是我的代码:$timezone=new\DateTimeZone('America/New_York');$date1=new\DateTime(date("Y:m:dH:i:s",time()),$timezone);$date1->add(new\DateInterval("PT24H"));echo$date1->format('Y-m-dh:s:m');这应该会在当前时间上增加24小时。问题是,每次刷新页面时,我都会得到不同的结果。我的意思不是像人们期望的那样只有几秒钟,我的意思是很多分钟。有些高于实际时间,有些低于实际时间。现在在晚上9:51进行三次刷新,结果如下:2013

php - 如何有效地比较两个 DateTimes 并检查它们是否是同一天?

我有两个DateTime对象$lastDate=$entity->getDate();//isaDateTimewithsameformatas$today$today=\DateTime::createFromFormat('!Y-m-d',date('Y-m-d'));现在我想检查这两个日期是否是同一天,或者它们是否相隔超过一天(但这还包括如果$lastDay是昨天晚上11点并且$today是新的一天凌晨1点)。我目前的情况是$diff=$today->diff($lastDate);if($diff->days>0){$return=false;}else{$return=tru

PHP日期间隔 - 错误的月份差异

看看这段代码:$first=DateTime::createFromFormat('Y-m','2001-07');$last=DateTime::createFromFormat('Y-m','1998-06');$interval=$first->diff($last);echo"mdiff:".$interval->m."ydiff:".$interval->y."\n";输出是mdiff:0ydiff:3为什么返回错误的月差?有趣的是,如果我将日期更改为“2001-08”和“1998-07”,它会返回正确的月份间隔==1。谢谢! 最佳答案

php - 从字符串设置 Symfony2 中的日期时间和时间

在我的实体中,我有两个字段,一个是DateTime类型,另一个是Time类型。我正在尝试这样做:$time="05:45";$date="01-09-2015"$entity=newEntity();$entity->setDate(new\DateTime($date));$entity->setTime($time);在这两种情况下,Symfony都告诉我代码有格式问题。我也试过:->setDate(newDatetime($date));->setDate(DateTime::createFromFormat($date,'d-m-Y));->setTime(strtotime(