XML解析器到CSV

时间:2015-05-27 01:32:26

标签: php xml csv

如何在php中解析xml到csv?任何人都可以帮助我。

这是我的示例代码

$parseFile = simplexml_load_file('form.xml','SimpleXMLElement', LIBXML_NOCDATA);

$filename = 'form.csv';
$f = fopen($filename,'w');

foreach ($parseFile->xpath("//field/label[1]") as $node ){
$node = [];
 fputcsv($f,(array)$node);

}
fclose($f);

1 个答案:

答案 0 :(得分:1)

您的脚本无法通过命名具有csv扩展名的文件来自动识别它应该是csv文件。如果您希望将其输出为csv文件,则需要定义 输出 标题,如下所示。

这需要放在文件的顶部:

header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=form.csv');

编辑:包括其余代码,包括一些小的语法更改

$f = fopen('php://output','w');

foreach ($parseFile->xpath("//field/label[1]") as $node ){
$node = [];
 fputcsv($f,array($node));

}
fclose($f);