我有一个像这样的xml:
<ns2:HotelRhg xmlns:ns2="http://v3.abc.somexyz.com/" size="6">
<hotelId>340194</hotelId>
<arrivalDate>03/06/2012</arrivalDate>
....
我想检索第一行(根元素)属性,例如“size”及其值。我用了
$xml->getDocNamespaces(TRUE);
但我只得到ns2 =“http://v3.abc.somexyz.com/”而不是size = 6
所以请任何人都可以使用PHP来解决这个问题
答案 0 :(得分:1)
Simplexml_load_string()
是解决方案
$string = <<<XML
<ns2:HotelRhg xmlns:ns2="http://v3.abc.somexyz.com/" size="6">
<hotelId>340194</hotelId>
<arrivalDate>03/06/2012</arrivalDate>
XML;
$xml = simplexml_load_string($string);
foreach($xml->ns2[1]->attributes() as $a => $b) {
echo $a,'="',$b,"\"\n";
如果您只想要大小,请执行以下操作而不是迭代
$attributes = $xml->ns2[0]->attributes(); //collection of all attributes in ns2
<b><?=$attributes['size'] ?></b> // in your html