以下代码成功检索并显示XML文件中的名称和价格元素。PHP/simpleXML - 防止将重复的XML值插入到数组中
我想也显示XML“存储”值的文本,但不希望显示任何重复的商店名称。
所以我创建了storeArray来保存商店的名称,但不知道如何防止将重复的商店名称插入到数组中。
在下面的代码中,“Best Buy”显示两次(使用第二个foreach循环时),但我只希望显示一次。
有没有方法可以在storeArray中插入商店的名称,还可以防止插入重复的商店名称?
或者是否有比下面的代码更好的方法?
$xmlDoc = simplexml_load_file("products.xml");
$storeArray = array();
foreach($xmlDoc->product as $Product) {
echo "Name: " . $Product->name . ", ";
echo "Price: " . $Product->price . ", ";
$storeArray[] = $Product->store;
echo "<br>";
}
foreach ($storeArray as $store) {
echo $store . "<br>";
}
XML文件:你有
<products>
<product type="Electronics">
<name> Desktop</name>
<price>499.99</price>
<store>Best Buy</store>
</product>
<product type="Electronics">
<name>Lap top</name>
<price>599.99</price>
<store>Best Buy</store>
</product>
<product type="Hardware">
<name>Hand Saw</name>
<price>99.99</price>
<store>Lowes</store>
</product>
</products>
恩只是检查,看看如果数组已经包含它,然后再添加? –