我试图围绕PHP和XML包装我的头。通过PHP检索XML页面的元素
我试图做一些事情:
还有就是我通过卷曲检索XML文档(也尝试过各种PHP的XML库参数,如XMLReader::open($url)
等回收的方法并不重要;我能够并且已经得到了这部分工作
问题是解析检索页面上的XML
这里是XML的一个例子:。
我需要从该页面获得的是电话号码;
<datafield tag="060" ind1=" " ind2=" ">
<subfield code="a">WM 173.6 R823m</subfield>
</datafield>
作者;
<datafield tag="100" ind1="1" ind2=" ">
<subfield code="a">Ross, Colin A.</subfield>
</datafield>
和标题信息;
<datafield tag="245" ind1="1" ind2="0">
<subfield code="a">Multiple personality disorder :</subfield>
<subfield code="b">diagnosis, clinical features, and treatment /</subfield>
<subfield code="c">Colin A. Ross.</subfield>
</datafield>
看起来够简单。然而,对于我来说,我似乎无法获得任何内置的PHP函数来处理XML的工作(因为我做错了)。
这里是我试过的例子:
//xml file retrieved via curl and saved to folder
$file="9780471615156.xml";
$xml = simplexml_load_file($file);
echo $xml->getName();//returns searchRetrieveResponse
foreach($xml->searchRetrieveResponse[0]->attributes() as $a => $b){
echo $a,'="',$b,"\"</br>";//nothing
}
foreach ($xml->searchRetrieveResponse[0]->children() as $child){
echo "Child node: " . $child . "<br />";//nothing
}
它返回第一个节点的名称,但我不能让它去任何更深。
注:我运行PHP 5+
正是我所需要的。非常感谢! – stormdrain 2010-08-01 21:16:13
@stormdrain:我的荣幸:)享受 – dwich 2010-08-01 21:21:38