【发布时间】:2012-07-14 09:26:45
【问题描述】:
我正在使用 SimpleXML 加载远程 XML
我的 PHP 代码如下所示
$xml = simplexml_load_file('http://www.abc.om/xml.php');
foreach( $xml as $Product )
{
echo 'ProductCode: '.$Product->ProductCode.'<br />';
echo 'ProductName: '.$Product->ProductName.'<br />';
}
我的 XML 如下所示
<All_Products>
<Product>
<ProductCode>9978H</ProductCode>
<ProductName>abc with Buckle in aBlack</ProductName>
<StockStatus>2</StockStatus>
</Product>
</All_Products>
产品标签重复,因为产品很多
在阅读 XML 提要后,XML 提要应显示之前的一些修改
<StockStatus>标签应该加标签
<ProductURL><ProductURL>
并且该标签应该显示为
<ProductURL>http://abc.com/abc with Buckle in aBlack-p/9978H.htm<ProductURL>
这意味着每个 ProductURL 都应该附加为
<ProductURL>http://abc.com/<ProductName>-p/<ProductCode>.htm<ProductURL>
要显示的最终 XML 将如下所示
<All_Products>
<Product>
<ProductCode>9978H</ProductCode>
<ProductName>abc with Buckle in aBlack</ProductName>
<ProductURL>http://abc.com/abc with Buckle in aBlack-p/9978H.htm<ProductURL>
<StockStatus>2</StockStatus>
</Product>
</All_Products>
所以我的问题是
1) 我是否必须在 foreach( $xml as $Product ) 循环中读取 Product 标记的所有元素,然后附加 ProductURL 元素,或者是否有任何捷径可以做到这一点
2) 数据准备好后,如何再次以 XML 格式显示数据
【问题讨论】:
-
你的问题是?你试过什么? :)
-
我看到一个错误:
</<All_Products> -
@MartinsBriedis 抱歉更新了代码
-
@phpdev 我添加了我尝试阅读 XML 和加载但如何阅读这 2 个特定标签的问题