用PHP的多种格式值从数据库打印日期


printing date from db with php multiple format values

我需要从数据库读取日期。我使用代码:

   echo "<td>".(empty($row['date]) ? '' : date_format( $row['date], 'd/m/Y')). "</td>"; 

,但我需要替换日期时,值是1900-01-01 00:00:00为"。如何在我的查询中添加if语句?

你可以试试这个简单的条件

 $date_text = "";
 if(!empty($row['date']) && $row['date']!='1900-01-01 00:00:00')
 {
    $date_text = date_format( $row['date'], 'd/m/Y'))
 }
 echo "<td>".$date_text."</td>"; 

UPDATE 2:

 $date_text = "";
 if(!empty($row['date']) && $row['date']!='' && $row['date']!=0 && $row['date']!='1900-01-01 00:00:00')
 {
    $date_text = date_format( $row['date'], 'd/m/Y'))
 }
 echo "<td>".$date_text."</td>";

可以使用嵌套的三元操作符:

$d = empty($row['date']) ? '' : ($row['date'] == '1900-01-01 00:00:00') ? '' : date_format( $row['date'], 'd/m/Y')
echo "<td>". $d . "</td>";

try date()

if($row['date'] != '1900-01-01 00:00:00' && !empty($row['date'])) {
  echo "<td>".(empty($row['date']) ? '' : date( 'd/m/Y', strtotime($row['date']))). "</td>";
}
else {
  echo 'date is equal to 1900-01-01 00:00:00 or empty';
}

使用三元操作符

echo "<td>".(($row['date'] != '1900-01-01 00:00:00' && !empty($row['date'])) ? date( 'd/m/Y', strtotime($row['date'])) : ''). "</td>";