用PHP访问嵌套数组中的数据
我正在从一个web服务读取一个具有以下结构的xml文件用PHP访问嵌套数组中的数据,php,arrays,xml,Php,Arrays,Xml,我正在从一个web服务读取一个具有以下结构的xml文件 <ArrayOfStoreDetails xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://tempuri.org/"> <StoreDetails> <
<ArrayOfStoreDetails xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://tempuri.org/">
<StoreDetails>
<ItemId>138253</ItemId>
<ItemPrice1>9.68</ItemPrice1>
</StoreDetails>
<StoreDetails>
<ItemId>159733</ItemId>
<ItemPrice1>35.87</ItemPrice1>
</StoreDetails>
</ArrayOfStoreDetails>
相反,我的输出是
0 => Array
1 => Array
我是一个真正的php初学者,不能真正理解这一点。。。
有什么帮助吗?
$productsArray['StoreDetails']
是一个二维数组
$value
是具有ItemID
和ItemPrice1
元素的关联数组。你需要把这些打印出来
foreach ($productsarray['StoreDetails'] as $value) {
echo $value['ItemID'] . " => " . $value['ItemPrice1'] . "<br>";
}
foreach($productsarray['StoreDetails']作为$value){
echo$value['ItemID']。“=>”$value['ItemPrice1']。“
”;
}
有什么理由不直接处理XML,因为它同样简单(步骤更少)。您需要循环使用$value
变量。
0 => Array
1 => Array
foreach ($productsarray['StoreDetails'] as $value) {
echo $value['ItemID'] . " => " . $value['ItemPrice1'] . "<br>";
}