PLSQL PHP:如何将大型xml数据从PLSQL函数转换为PHP

时间:2016-10-10 04:53:34

标签: php xml plsql

我想使用PLSQL函数从Oracle数据库中获取所有员工ID到php.I've 10000个员工ID,每个大小为varchar2(10)

这是我的PLSQL功能代码:

FUNCTION view_emp_list_by_office  return  clob IS
ret xmltype;
BEGIN                 
SELECT  xmlelement("employee_id_list",                   
              XMLAGG(                    
                   xmlelement("employee",
                   xmlelement("emp_id", EMP_ID)                   
                   )ORDER BY EMP_NAME ASC
              )
) as clob into ret
FROM TABLE_EMPLOYEE_INFO;

RETURN '<result><status >success</status>'||ret.getClobval()||'</result>'; 
EXCEPTION
WHEN OTHERS THEN
RETURN  '<result><status>Error</status></result>'; 

END view_emp_list_by_office;

这是PHP代码:

$stid = oci_parse($conn, " begin   
       :result :=  package1.view_emp_list_by_office;  
                      end;" );      
    oci_bind_by_name($stid, ':result',$ru, 247800);
    $output = oci_execute($stid);

如果xml数据大小不大,代码工作正常。但是当我尝试获取所有员工ID时,它不起作用。它看起来像一个内存问题。如何解决这个问题?我需要进行任何代码修改吗。请帮助我。

1 个答案:

答案 0 :(得分:1)

我过去遇到了一个问题,但执行了一个存储过程并将其导出到文件中。情况不一样但...... 检查你的memory_limit。我认为它默认带有64mb