【发布时间】:2012-05-06 21:47:39
【问题描述】:
我正在尝试解析这个文件:http://mdc.cbuc.cat/cgi-bin/oai.exe?verb=ListRecords&metadataPrefix=oai_dc&set=afcecemc&from=2011-06-21&until=2011-06-21 使用 SimpleXML。
我可以获取所有元素,但那些在标签内的元素除外。它说标签是空的。这是我的代码。
function getXMLfile($URL) {
$chDyn = curl_init();
curl_setopt ($chDyn, CURLOPT_URL, $URL);
curl_setopt($chDyn, CURLOPT_RETURNTRANSFER, 1);
$xml = curl_exec($chDyn);
curl_close($chDyn);
try {
$xmlObj = new SimpleXMLElement($xml);
}
catch (Exception $e) { echo $e; }
return $xmlObj;
}
$cdmURL = "http://mdc.cbuc.cat/cgi-bin/oai.exe?verb=ListRecords&metadataPrefix=oai_dc&set=afcecemc";
$xmlObj = getXMLfile($cdmURL);
$xmlNode = $xmlObj->ListRecords;
foreach ($xmlNode->record as $rNode) {
var_dump($rNode->children());
}
但输出是这个:
[...]
["metadata"]=>
object(SimpleXMLElement)#8 (0) {
}
此元素不为空!我知道该解决方案在某种程度上与使用“命名空间”有关,但我不知道如何使它起作用。
任何帮助将不胜感激! 谢谢。
【问题讨论】: