У меня есть XML-simplexml_load_file опуская 00 из XML в CSV
Пример:
<?xml version="1.0" encoding="utf-8"?>
<StockValues>
<Product>
<Product_Code>00380</Product_Code>
<Available_Stock>200</Available_Stock>
<Due_Date>2013-10-13</Due_Date>
</Product>
<Product>
<Product_Code>00429</Product_Code>
<Available_Stock>200</Available_Stock>
<Due_Date>2013-11-14</Due_Date>
</Product>
<Product>
<Product_Code>00495</Product_Code>
<Available_Stock>200</Available_Stock>
<Due_Date>N/A</Due_Date>
</Product>
<Product>
<Product_Code>0122</Product_Code>
<Available_Stock>200</Available_Stock>
<Due_Date>N/A</Due_Date>
</Product>
<Product>
<Product_Code>0190</Product_Code>
<Available_Stock>200</Available_Stock>
<Due_Date>2013-10-16</Due_Date>
</Product>
<Product>
<Product_Code>052A</Product_Code>
<Available_Stock>200</Available_Stock>
<Due_Date>N/A</Due_Date>
</Product>
<Product>
<Product_Code>052B</Product_Code>
<Available_Stock>200</Available_Stock>
<Due_Date>2013-10-09</Due_Date>
</Product>
<Product>
<Product_Code>052BK</Product_Code>
<Available_Stock>200</Available_Stock>
<Due_Date>2013-09-28</Due_Date>
</Product>
Я использую simplexml_load_file преобразовать в CSV. Он отлично работает, но 2 проблемы. Во-первых, мои коды продуктов, начинающиеся с 00, теряют 00 в генерации CSV. Поэтому мне как-то нужно держать это как текстовое поле.
Во-вторых, здесь я также хотел бы разместить заголовки столбцов.
Это код, который я адаптировал до сих пор:
<?php
$filename='test.csv';
if (! file_exists($filename))
{
echo "There's no test file";
}
else
{
echo "There's 1a test file !";
unlink($filename);
}
echo '<br />';
if(! $xml = simplexml_load_file('1feed2.xml'))
{
echo 'unable to load XML file';
}
else
{
foreach($xml as $product_record)
{
$prodarray = "\"$product_record->Product_Code\"".","."$product_record->Available_Stock".",END\n";
echo $prodarray;
//echo '<br />';
file_put_contents($filename,$prodarray,FILE_APPEND);
echo "line written <br />";
}
}
$handle = fopen($filename, "rb");
$contents = fread($handle, filesize($filename));
fclose($handle);
print $contents;
?>
Кто-нибудь знает, что я могу сделать, чтобы исправить это?
В настоящее время он генерирует CSV, который является большим, но просто не хватает вышеуказанных бит.
Но данные, полученные за пределами моего контроля. Итак, как будет выглядеть код файла? – vikgoy
Также вы знаете, как я могу добавить заголовки столбцов? Спасибо – vikgoy
См. Мой обновленный ответ. – Searock