我有两个不同的查询,我只是尝试打印我的查询部分,如下所示,
$dateSql="DATE(DATE_SUB(ec.membership_expires,INTERVAL 1 WEEK))";
echo "1 : (DATE(ec.last_reminder) < $dateSql and NOW() >= $dateSql)";
echo "2 : (DATE(ec.last_reminder)<$dateSql and NOW()>=$dateSql)";
我会得到两个不同的结果:
1 :(日期(ec.last_reminder)&lt; DATE(DATE_SUB(ec.membership_expires,INTERVAL 1 WEEK))和NOW()&gt; = 日期(DATE_SUB(ec.membership_expires,INTERVAL 1 WEEK)))
2 :(日期(ec.last_reminder)= DATE(DATE_SUB(ec.membership_expires,INTERVAL 1) WEEK)))
有人能解释为什么会这样吗?
答案 0 :(得分:2)
之所以发生这种情况,是因为您在浏览器中查看结果,该浏览器会处理
<DATE(DATE_SUB(ec.membership_expires,INTERVAL 1 WEEK)) and NOW()>
作为标记,只是跳过它,因为它无效。
您需要做的是 - 只是查看页面的来源,在终端中运行它或将整个输出包装在htmlspecialchars()
中。
JSFiddle:http://jsfiddle.net/NnEL6/
答案 1 :(得分:2)
猜猜时间:
您正在浏览结果在浏览器中解释 HTML 。 <FOO
表示HTML中的内容,< FOO
没有...