我尝试用php创建一个xml文件。
由于文件是mySQL数据库的摘录,因此记录集可能包含大约90000行。 因此生成xml文件很慢,大约50秒。
我不想进行转储,只是创建一个文件发送给Flashbuilder来创建数据提供者。
我尝试使用多个过程:
DOMDocument
XmlWriter
SimpleXMLElement
但是使用这些方法,创建文件的时间是一样的。
我在服务器端进行了另一项测试,使用此指令:ini_set('memory_limit','-1');
你知道另一种方法,写大xml文件速度太快。
感谢您的帮助。
答案 0 :(得分:4)
您确定要通过PHP路由数据吗?也许您可以使用mysqldump
能力以XML格式创建输出:请参阅此处的MySQL docu。
mysqldump -X yourDb yourTable
答案 1 :(得分:0)
mysqldump将是最好的。
否则,取决于您是否具有特定的文件格式。最好的方法可能只是迭代结果并使用php“手动”构建文件。 phpMyAdmin也可以导出xml。真的很简单......
$rows = '<? xml... ?>';
$query = mysql_query();
while($row = mysql_fetch_assoc($query)){
$rows .= "<row>\n";
foreach($row as $tag=>$val){
$rows.= "<$tag>$val</$tag>\n";
}
$rows .= "</row>\n";
}
file_put_contents('sql.xml',$rows);
但你很可能正在尝试做一些只需要时间来处理的事情,并且php不是最好的工具,即mysqldump