1

我有一个 PHP 网站是使用 Codeigniter 框架构建的。我总是从 Apache 日志中收到以下错误消息:

PHP 致命错误:在第 150 行的 /usr/local/apache2/htdocs/mywebsite/application/helpers/my_helper.php 中允许的内存大小为 1073741824 字节已用尽(试图分配 8192 字节)

关于第 150 行的 my_helper.php 如下:

function objectToArray( $object ){
if( !is_object( $object ) && !is_array( $object ) )
    {           
        return $object;
    }
    if( is_object( $object ) )
    {
        $object = get_object_vars( $object );   # <<<<<<< Line 150
    }   
    return array_map( 'objectToArray', $object );  
}

“objectToArray”的功能是用来处理XML文件的XPATH结果对象(我使用simplexml_load_file来加载XML文件)。

# 传递 XML 对象的示例如下:#

$xmlObject = simplexml_load_file(PATH_TO_XML_FILE, 'SimpleXMLElement', LIBXML_NOCDATA);
$data = $xmlObject->xpath(MY_XPATH);
$ary = objectToArray($data);

我也尝试将 memory_limit 值设置为 unlimit(ini_set('memory_limit',-1)),但它仍然有错误。

是否有任何关于硬件或编程的调整以防止出现问题?谢谢!

4

0 回答 0