1
我的XML文件是这样的:的getElementsByTagName,Retrieiving从的nodeValue具体的nodeValue有多个值
<Charge ID="01010101">
<Type>SHIPPING</Type>
<Description>Shipping</Description>
<Amount>8.9500</Amount>
</Charge>
<Charge ID="10101010">
<Type>TAX</Type>
<Description>Sales Tax</Description>
<Amount>0.0000</Amount>
</Charge>
我可以做一个数组出这个
$getcharge = $doc->getElementsByTagName("Charge");
$array = array();
foreach ($getcharge as $node) {
$array[] = $node;
}
使用print_r
我能看到的nodeValue
是这样构造的
[nodeValue] =>
SHIPPING
Shipping
8.9500
沿着同理,我可以用
foreach ($doc->getElementsByTagName("Charge") as $values) { {
$result[] = $values->nodeValue;
}
}
输出使这些nodeValues数组是
Array
(
[0] =>
SHIPPING
Shipping
8.9500
[1] =>
TAX
Sales Tax
0.0000
)
这些子节点困惑我,因为他们不是在个别的nodeValue的,如在阵列中看到。它们实际上都是一个nodeValue。
我想要做的是循环Charge
并将<Type></Type>
和<Amount></Amount>
变为变量。
如何在具有多个属性的nodeValue中获得Type
和Amount
的单个实例?
在原始的ForEach中的' - > getElementsByTagName'作为关键字?真棒,没有想到这一点,是有道理的..完美地输出一个很好的数组,每个很容易解析。 –
@BrianBruman很高兴这有帮助 – Ghost