我正在寻找一个站点中的一桶数据,选择其中的特定部分,将其转换为XML格式,然后将其导入数据库(此问题与XML格式部分有关)
接收到的数据是原始文本文件,但是可以分为许多不同的类别。该文件使用的字段分隔符为“:”,根据我目前的经验,XMLWriter喜欢分隔符为“,”
有什么方法可以更改Separator XMLWriter的使用吗?
当前XML代码:
<?php
$data = fopen('thing.txt', 'r');
$xml = new XMLWriter;
$xml->openURI('php://output');
$xml->setIndent(true); // makes output cleaner
$xml->startElement('Controllers');
while ($line = fgetcsv($data)) {
$xml->startElement('Current');
$xml->writeElement('Callsign', $line[0]);
$xml->writeElement('CID', $line[1]);
$xml->writeElement('Name', $line[2]);
$xml->endElement();
}
$xml->endElement();
谢谢!
答案 0 :(得分:1)
XMLWriter是创建输出的部分,它对您所读取文件的格式一无所知。这将取决于对fgetcsv()
的调用。第三个参数是您要使用的定界符,因此将读取行更改为...
while ($line = fgetcsv($data, 0, ':')) {