0
次のコードがオンラインで見つかりました。 私はCSVファイルをXMLファイルに変換する必要があります。 私が変更する必要があるのは、下の例のようにrssバージョンの行に同じXML構造を出力するコードを作成することです。出力するためにPHPを使用したCSV2XML - XMLを出力する行を追加する必要があります
<channel>
<item>
<title>
<![CDATA[ pablo1 ]]>
</title>
<description>
<![CDATA[ this is description 1 ]]>
</description>
<link>
<![CDATA[ http://www.link1.com ]]>
</link>
</item>
</channel>
誰かがコードを更新する方法を知っている次のXML構造:
<?php
// Map CSV file to array
$rows = array_map('str_getcsv', file('data.csv'));
$header = array_shift($rows);
$data = array();
foreach ($rows as $row)
{
$data[] = array_combine($header, $row);
}
// Process Data if need be
foreach($data AS $key => $val)
{
// Processing here
}
//Creates XML string and XML document using the DOM
$xml = new DomDocument('1.0', 'UTF-8');
//Add root node
$root = $xml->createElement('channel');
$xml->appendChild($root);
// Add child nodes
foreach($data AS $key => $val)
{
$entry = $xml->createElement('item');
$root->appendChild($entry);
foreach($val AS $field_name => $field_value)
{
$field_name = preg_replace("/[^A-Za-z0-9]/", '', $field_name); // preg_replace has the allowed characters
$name = $entry->appendChild($xml->createElement($field_name));
$name->appendChild($xml->createCDATASection($field_value));
}
}
// Set the formatOutput attribute of xml to true
$xml->formatOutput = true;
// Output to screen
// header('Content-Type: text/xml');
// echo $xml->saveXML();
// Save as file
$xml->save('xml-import.xml'); // save as file
?>
上記のコードは、以下のXML構造を出力?基本的には、rss version = "2.0"行を追加する必要があります。
<rss version="2.0">
<channel>
<item>
<title>
<![CDATA[ pablo1 ]]>
</title>
<description>
<![CDATA[ this is description 1 ]]>
</description>
<link>
<![CDATA[ http://www.link1.com ]]>
</link>
</item>
</channel>
</rss>
ありがとうございました!
パーフェクトできるが、それは動作しますが、あなたのナイジェルに感謝します! –