如何在我的PHP应用程序中仅显示Oracle的顶级错误消息

时间:2015-01-05 11:32:26

标签: php oracle error-handling oci

我有一个通过PHP OCI连接到我的Oracle数据库的应用程序。

我收到来自数据库调用的错误,如bellow

$r = oci_execute($stid);
   if (!$r) {

     $e = oci_error($stid); // For oci_execute errors pass the statement handle
     die($callback . '(' . json_encode(
     array_merge(
         array(

          'STATUS' => 'FALSE'
        ),
       array(

        'ERROR_MESSAGE' => $e['message']
      )
     )
   ) .
' )
');

我的问题是,错误总是太长,因为它会向下钻取到错误的来源,如下所示

  

“ORA-01841 :(完整)年份必须介于-4713和+9999之间,而不是0   ORA-06512:在“APPOWN.CLIENTINTERFACE”,第133行ORA-06512:at   “APPOWN.CLIENTORDER_API”,第3609行ORA-06512:at   “APPOWN.CLIENTORDER_API”,第447行ORA-06512:at   “APPOWN.CLIENTORDER_API”,第3184行ORA-06512:第26行“

我只需要如下面的顶级错误消息

  

(完整)年份必须介于-4713和+9999之间,而不是0

有没有办法(除了对响应字符串做一些文本工作)才能得到一条简单的错误信息?

0 个答案:

没有答案