首页 > 解决方案 > Oracle 数据库未使用 PHP 正确排序日期

问题描述

我有一个包含信息的 oracle 数据库,我想创建一个简单的搜索站点,用户可以在其中从数据库中搜索必要的信息。一切都好,但是当我按日期订购时,我得到 01.01.1970 日期。但是我选择的日期会返回所有内容。

我用来从 Oracle DB 获取数据的 PHP:

$s = oci_parse($conn, 'select ADRESS, DATE from IECERES_VW order by DATE desc fetch first 10 rows only');
oci_set_prefetch($s, 7);
oci_execute($s);
$results = array();
while($row = oci_fetch_array($s, OCI_ASSOC+OCI_RETURN_NULLS)) {     $result[] = $row; }

这是输出代码的样子:

<td nowrap class="text-center p-1"><?php echo date("d.m.Y",strtotime($row['DATE'])); ?></td>
<td  nowrap class="text-center p-1"><?php echo "-"; ?></td>
<td  nowrap class="text-center p-1"><?php echo $row['ADRESS']; ?></td>

我用 oracle 尝试了多个日期函数,但都做同样的事情,只是日期排序不正确。

标签: phporacle

解决方案


经过几天的麻烦,我设法找到问题所在。有人输入了 Null 值的日期,并且由于表中有数百万个数据,我什至没有考虑检查这些值,因为我认为一切都是正确的。这个简单的问题花了很多时间。但也感谢所有提出好想法的人。


推荐阅读