PHP - XML到CSV转换问题

时间:2012-02-11 12:58:48

标签: php xml csv

我真的需要一些问题的帮助:我正在使用PHP脚本将XML转换为CSV,但XML包含一些+符号,我不知道如何从CSV中删除它们。

这是XML文件结构:

<PRICES>
<PRICE>
<WIC>HDE0AAFGRBOX</WIC>
<STOCK>100+</STOCK>
<MY_PRICE>219.00</MY_PRICE>
</PRICE>
</PRICES>

这是我使用的脚本:

<?
$filexml='stock.xml';
if (file_exists($filexml)) {
$xml = simplexml_load_file($filexml);
$f = fopen('stock.csv', 'w')
foreach($xml->PRICES->PRICE as $price) {
fputcsv($f, get_object_vars($price),',','"');
}
fclose($f);
}
?>

脚本工作正常,CSV文件很好,但因为我是PHP的菜鸟,我不知道如何删除“+”符号。

非常感谢任何帮助。

提前致谢!

2 个答案:

答案 0 :(得分:1)

您可以尝试修剪要删除的字符('+'字符):

foreach($xml->PRICES->PRICE as $price) {
   $price->STOCK = trim($price->STOCK, "+");
   fputcsv($f, get_object_vars($price),',','"');
}

答案 1 :(得分:0)

尝试使用str_replace:

$filexml='stock.xml';
if (file_exists($filexml)) {
$xml = simplexml_load_file($filexml);
$f = fopen('stock.csv', 'w')
foreach($xml->PRICES->PRICE as $price) {
$price->STOCK = str_replace("+","",$price->STOCK);
fputcsv($f, get_object_vars($price),',','"');
}
fclose($f);
}