Я пытаюсь получить пакет данных с сайта, выбрать отдельные его разделы, превратить их в формат XML, а затем импортировать их в базу данных (этот вопрос касается раздела формата XML)
полученные данные представляют собой необработанный текстовый файл, который, однако, различается по многим различным категориям. Разделитель полей, используемый этим файлом: «:», и из моего текущего опыта, XMLWriter любит разделитель «,»
Есть ли способ изменить разделитель 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();
Спасибо!
XMLWriter — это часть, которая создает выходные данные, она ничего не знает о формате файла, который вы читаете. Это будет до звонка fgetcsv()
. Третий параметр — это разделитель, который вы хотите использовать, поэтому измените строку чтения на …
while ($line = fgetcsv($data, 0, ':')) {
Других решений пока нет …