为什么要将php datetime对象与比较运算符进行比较
php使用大于的比较运算符比较两个dateTime对象。下面给出了代码为什么要将php datetime对象与比较运算符进行比较,php,Php,php使用大于的比较运算符比较两个dateTime对象。下面给出了代码 $date1=new DateTime("07-03-2010"); $date2=new Datetime("21-09-2015"); if($date1>$date2) { echo "two datetime object has compared"; } 上面的代码给出了正确的结果。我的问题是如何将两个Datetime对象与php中的比较运算符进行比较
$date1=new DateTime("07-03-2010");
$date2=new Datetime("21-09-2015");
if($date1>$date2)
{
echo "two datetime object has compared";
}
上面的代码给出了正确的结果。我的问题是如何将两个Datetime对象与php中的比较运算符进行比较:
内置类可以定义自己的比较
:
内置类可以定义自己的比较
DateTime是内置的,可以重载运算符。这在PHP中是不可能的…现在
我认为相关的行是。DateTime是一个内置的,可以重载操作符。这在PHP中是不可能的…现在
我认为相关的行是。实际上在PHP中,当我们将日期存储在变量中时,它不会以任何格式存储。而是以秒为单位存储,即给定日期和PHP定义的参考日期之间的差值。我不太记得参考日期,你可以用谷歌搜索一下 所以,当你比较日期时,它实际上是比较秒数 看看这个,
实际上在PHP中,当我们将日期存储在变量中时,它不会以任何格式存储。而是以秒为单位存储,即给定日期和PHP定义的参考日期之间的差值。我不太记得参考日期,你可以用谷歌搜索一下 所以,当你比较日期时,它实际上是比较秒数 看看这个,
上面的代码不打印任何内容。第一个对象输出不大于第二个对象输出。将比较所有对象属性。因为只有公共“date”是不同的,所以将它作为一个字符串进行比较。因此,它将字符串“2010-03-07 00:00:00”与字符串“2015-09-21 00:00:00”@RoyalBg进行了比较,这不是真的。尝试将$date1与字符串07-03-2010进行比较-它不会给出任何上述代码。第一个对象输出不大于第二个对象输出。将比较所有对象属性。因为只有公共“date”是不同的,所以将它作为一个字符串进行比较。因此,它将字符串“2010-03-07 00:00:00”与字符串“2015-09-21 00:00:00”@RoyalBg进行了比较,这不是真的。尝试将$date1与字符串07-03-2010进行比较-它会给出FALSE为什么会这样:如果$date1>ZZ-ZZ-ZZ给出true?使用OP示例中的$date1。是的,可能它们都被强制转换为INT。为什么:如果$date1>ZZ-ZZ-ZZ为真?使用OP示例中的$date1。是的,可能它们都强制转换为intmktime不会返回DateTime对象。mktime不会返回DateTime对象。