0
正常工作下面被用来检索从下面的XML文件中的“存储”元素的值和值插入到一个数组(该storeArray)的代码。我不希望将重复值放入数组(IE我不希望百思买插入两次),所以我使用in_array方法 以防止重复。PHP的in_array功能不与XML
此代码不能防止重复(IE百思买两次显示):
$xmlDoc = simplexml_load_file("products.xml");
$storeArray = array();
foreach($xmlDoc->product as $Product) {
echo "Name: " . $Product->name . ", ";
echo "Price: " . $Product->price . ", ";
if(!in_array($Product->store, $storeArray)) {
$storeArray[] = $Product->store;
}
}
foreach ($storeArray as $store) {
echo $store . "<br>";
}
但是这个代码工作:
$practiceArray = array('Product1', 'Product2', 'Product3');
if (in_array("Product1", $practiceArray)) {
echo "Is in array";}
else {
echo "NOT in array";
}
有什么建议?
下面是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>
除了字符串之外,最初可以投射什么变量类型? –
@SetSailMedia你可以强制任何类型(数组)(布尔)(字符串)...问题是如果结果是你所期望的。 :) –
谢谢!有效! –