草庐IT

datetime-parsing

全部标签

php - 获取给定 DateTime 的下一个,如果日期不同则跳过

我想从给定的日期和时间获取下个月的日期和时间。这是我现在拥有的:$dt=newDateTime('2019-01-31');for($i=0;$iadd(newDateInterval('P1M'));$final=$dt->format('Y-m-d');echo$final."\n";}//Output://2019-03-03//2019-04-03//2019-05-03//2019-06-03//2019-07-03问题是,它将日期从“31”更改为“02”,因为在2月,没有第31天。所以在没有30或31的月份中,我想跳过这些几个月,但保持天数不变。所以这里应该是预期的输出:/

php - parse_str 在元素前面加上符号?

我一直在尝试使用cURL,并尝试将数组作为POST变量发送。我决定使用http_build_query按预期传递字符串:curl_setopt($this->ch,CURLOPT_POSTFIELDS,http_build_query($sendParams));我让接收端简单地print_r'ing$_POST,这样我就可以看到正在发送的内容。但是,我在第一个之后的所有父元素上都附加了一个&,这正常吗?我假设parse_str在解析查询字符串时被cURL使用,所以这里是一个super简化的例子,它也导致了&符号:array('baz'=>array(1,2,3))),'test'=>

php - 使用 DateInterval 和 DateTime::add 添加月份时会出现什么问题?

我没能找到解决这个问题的合适方法。正如您在PHP文档中的示例#3中看到的那样,他们声明onemustbewarewhenaddingmonths在DateTime::add中使用DateInterval。对于为什么该方法的行为如此以及我可以做些什么来避免这种情况,我并没有任何解释,乍一看我发现这是一个错误。有人对此有一些见解吗? 最佳答案 问题是每个月的天数可能不同。问题是当您想将日期增加1个月时您在做什么。根据PHP文档,如果您在1月31日(或30日)添加1个月,预期行为是什么?2月只有29天。是否要设置为该月的最后一天?如果这是

php 挑战 : parse pseudo-regex

我遇到了一个我无法解决的挑战,但对于用算法思考的人来说,这似乎很有趣而且相对容易...如果我的搜索词有一个“?”其中的字符,这意味着它不应该关心前面的字符是否存在(如在正则表达式中)。但我希望我的程序打印出所有可能的结果。几个例子:“tab?le”应该打印出“table”和“tale”。结果数始终为问号数的2次方。再举一个例子:“carn?ati?on”应该打印出来:克拉顿关爱康乃馨康乃馨我正在寻找一个函数,它可以接收带问号的单词并输出一个包含所有结果的数组... 最佳答案 以您的“carn?ati?on”为例:你可以在“?”上将单

URL 查询的 PHP parse_str 返回键名中包含 'amp' 的数组键

环境:主机(JustHost)上测试站点上的Wordpress(最新),PHP版本为5.4.43。在URL查询中使用parse_str,生成的数组返回amp;keyname的数组键名。示例代码:$querystring="ie=UTF8&qid=1468851514&sr=8-1&keywords=there&tag=sitename-20";parse_str($querystring,$queryarray);echo"";print_r($queryarray);echo"";返回Array([ie]=>UTF8[amp;qid]=>1468851514[amp;sr]=>8-1

php - 如何在 php 中检索 Parse.com 用户详细信息

我正在使用parsephpsdk来处理我网页中的数据。我的数据库中有一个用户类。我正在尝试将所有用户详细信息显示到我的网页中。服务器连接正确且有效,因为它显示了所有其他类的详细信息。但它不适用于User类。以下是我的php代码。find();echo"Successfullyretrieved".count($results)."scores.";for($i=0;$igetObjectId().'-'.$object->get('name');}?>当我运行这段代码时,我得到以下结果Successfullyretrieved0scores.但是我的用户类中有6个用户。

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 - 使用 PHP SDK 查询 Parse.com

我正在尝试使用新的PHPSDK查询Parse.com。我已经安装了所有必要的东西。不过,我在查询时遇到问题。链接:[https://www.parse.com/docs/php_guide#queries]我试过用这个:require'vendor/autoload.php';useParse\ParseClient;useParse\ParseObject;ParseClient::initialize('secret1','secret2','secret3');$query=newParseQuery("TableName");$query->equalTo("email","e