你好,这是我的第一篇文章。 我试图解析使用PHP的XML,但我坚持我的XML它解析PHP5中的复杂XML
例如:
<xml xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
xmlns:rs='urn:schemas-microsoft-com:rowset'
xmlns:z='#RowsetSchema'>
<s:Schema id='RowsetSchema'>
<s:ElementType name='row' content='eltOnly' rs:CommandTimeout='30'>
<s:AttributeType name='ows_LinkTitle' rs:name='Phone Number*' rs:number='1'>
<s:datatype dt:type='string' dt:maxLength='512' />
</s:AttributeType>
<s:AttributeType name='ows_GSM_x0020_PUK' rs:name='GSM PUK' rs:number='2'>
<s:datatype dt:type='string' dt:maxLength='512' />
</s:AttributeType>
</s:ElementType>
</s:Schema>
<rs:data>
<z:row ows_LinkTitle='628558621183' ows_GSM_x0020_PUK='41016732'/>
<z:row ows_LinkTitle='628558621181' ows_GSM_x0020_PUK='21783670'/>
</rs:data>
</xml>
我试图从每一个“Z中获得的价值:行' 任何帮助非常感谢。由于
我想要这个代码,它不工作
$xml_all = simplexml_load_string($xmlnya);
echo '<ol>';
foreach ($xml_all->xml->rs->z as $zrow)
{
echo '<li> ows_LinkTitle: '.$zrow['ows_LinkTitle'];
echo '</li>';
}
echo '</ol>';
你的XML格式不正确(缺少's'命名空间声明,缺少':ElementType'结束标记,请在尝试“解析”它之前解决该问题 – salathe
*(reference)* http://php.net/manual /en/domdocument.getelementsbytagnamens.php – Gordon
你可以尝试使用SimpleXML的问题是,你的XML字符串远未有效(没有“S”的命名空间,一个“
”不封闭)。 – Arkh