什么是用PHP创建大型XML文件的最佳方式?
问题描述:
我尝试用php创建一个xml文件。什么是用PHP创建大型XML文件的最佳方式?
由于文件是mySQL数据库的摘录,记录集可能包含大约90000行。 所以生成xml文件很慢,大约在50s左右。
我不想做转储,但只创建一个文件发送到Flashbuilder来创建数据提供者。
我尝试用几个过程:
DOMDocument
XmlWriter
SimpleXMLElement
但随着这些方法,时间创建文件是相同的。
我做了服务器端的另一个测试,这项指令:ini_set('memory_limit','-1');
你知道的另一种方法,编写大型XML文件太速度。
感谢您的帮助。
答
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
+1不错 - 总是使用正确的工具来完成工作....但是你知道OP会抱怨它不是“他们的格式”! – ManseUK 2012-03-29 09:44:01
+1这工作正常....让MySQL导出自己的数据 – Baba 2012-03-29 09:51:48