Php 为什么';如果语句有效,这难道不简单吗?
我有一件简单的事情要解决 我将一个日期存储在一个表中,并将其与php生成的日期进行比较 即: 我的结局是:Php 为什么';如果语句有效,这难道不简单吗?,php,Php,我有一件简单的事情要解决 我将一个日期存储在一个表中,并将其与php生成的日期进行比较 即: 我的结局是: hi 这可能是一个黄昏时刻,我认为左边是右边,一个大于的符号实际上是一个小于的符号。所以请帮帮我-为什么这不起作用?要比较日期,您必须使用strotime()来比较$row['start\u date']和time() if(strotime($row['start\u date'])
hi
这可能是一个黄昏时刻,我认为左边是右边,一个大于的符号实际上是一个小于的符号。所以请帮帮我-为什么这不起作用?要比较日期,您必须使用
strotime()
来比较$row['start\u date']
和time()
if(strotime($row['start\u date'])
使用strotime()
将字符串转换为unix时间戳,然后进行比较。
或者使用对象。我不确定将日期作为字符串进行比较的有效性,使用或和比较时间戳可能是更可靠的选项,但使用此日期格式时,它应该作为字符串使用 除此之外,您的逻辑似乎按照书面形式工作(如果不是预期的)。“…13”小于“…15”,因此
if
将计算为true
并打印“hi”
从内联评论来看,这似乎实际上可能是你所说的那些黄昏时刻之一。如果
$row['start\u date']='2011-09-13'
和date(“Y-m-d”)='2011-09-15'
,那么你的PHP日期大于行的日期,因此如果是真的,那么'2011-09-13'
毕竟是“更小的”(我建议.Hmmm,但是'2011-09-13'2011-09-15'
不是真的吗?在PHP中,使用@Evan Teran:它们在词汇上是可以比较的字符串。代码应该可以工作您不必“必须”使用strotime()
if $row['start_date'] === '2011-09-13' AND date("Y-m-d") === '2011-09-15'.
hi
if(strtotime($row['start_date']) < time())
if($row['start_date'] > date("Y-m-d")) {
// table stored date larger than php date
echo 'hi';
} else {
// php date larger than table stored date
echo 'bye';
}