调用php / cake web应用程序时没有序列化的xml响应

时间:2011-08-07 23:34:42

标签: php xml-serialization cakephp

我在使用PHP 5 /蛋糕运行的网络应用程序中有一个奇怪的行为。 问题是: 我正在调用一个API来从MySql返回XML格式的数据。 如果总数据量很小,一切正常。

但是当结果包含数千个数据元素(时间戳/值对)时,xml serialize函数无法返回xml响应。它实际上看起来像线程死了,可能是由于异常?

这是代码 - 这是 app / views / analytic / ajax.ctp ,在我从数据库获得数据后确定:

<?php
header("Content-Type: text/xml");
e('<?xml version="1.0"?>');

echo 'before serialize';
e($xml->serialize2($msg, array('format' => 'tags')));
echo 'after serialize';

e($this->element('sql_dump'));

&GT;

我没有看到'序列化后'输出。

$ xml-&gt; serialize()是 cake / views / helpers / xml.php

的一部分
function serialize($data, $options = array()) {
$options += array('attributes' => false, 'format' => 'attributes');
$data =& new Xml($data, $options);
return $data->toString($options + array('header' => false));
}

看起来这一行导致了问题:

$data =& new Xml($data, $options);

我在没有运气的情况下到处搜寻这个问题。

非常感谢任何帮助!

THX

奥弗

1 个答案:

答案 0 :(得分:0)

问题解决了 - 我将php.ini中的memory_limit从32M增加到512M。