如果日期已过,那就让它说'"日期过去了#34;但如果不是我想让它显示代码继续我到目前为止所得到的。
<?php // get the day of today
$today = date('z');
// you can pass any date to the strtotime function
$day = date('z', strtotime($row_SpartanRecordNew['date']));
// check to see if the date has passed
echo ($day < $today)?"Date has passed":"date in the future";
?>
<td align="center"><?php echo ($day < $today)?"Date has passed": echo $row_RecordNew['date'] ?> </td>
最后一个回声部分没有推动该值,我做错了什么?谁可以指导我
答案 0 :(得分:1)
您正在错误地使用三元运算符:
echo ($day < $today)?"Date has passed": $row_RecordNew['date'];
括号内的部分是布尔值,然后第一个选项是true,第二个选项是false - 但在这种情况下,它总是会回显一些东西。
这样想:
function (true/false condition)? do this if true: do this if false;
其次,date()
是通常用于输出格式化日期字符串的函数。如果您要比较unix时间戳(strtotime的输出),您可能只想将$day
设置为使用time()
而不是date()
的unix时间戳,如下所示:
$today = time();
$day = strtotime($row_SpartanRecordNew['date']);
// check to see if the date has passed
echo ($day < $today)?"Date has passed":"date in the future";