2010-05-16 102 views
0

我有一个这样的XML文件:PHP的SimpleXML和XPath

<?xml version="1.0" encoding="UTF-8"?> 
<gallery> 
    <album tnPath="tn/" lgPath="imm/" fsPath="iml/" > 
     <img src="001.jpg" /> 
     <img src="002.jpg" /> 
    </album> 
</gallery> 

我读文件用:

$xmlFile = "xml.xml"; 
$xmlStr = file_get_contents($xmlFile . "?" . time()); 
$xmlObj = simplexml_load_string($xmlStr); 

现在我重建XML文件,并想保存它专辑节点的属性在VAR 我使用XPath想:

// these all return arrays with the images... 
// echo $xmlObj->xpath('/gallery/[email protected]'); 
// echo $xmlObj->xpath('//album[@tnPath]'); 
// echo $xmlObj->xpath('//@tnPath'); 

但这似乎并不奏效?任何帮助?

+0

''? 。 time()'东西是没有必要的。获取远程资源时,PHP没有缓存(假设它是远程的,否则它会更无用甚至打开文件) – ThiefMaster 2010-05-16 14:25:20

+0

Oh really really?感谢您的提示.. – FFish 2010-05-16 14:59:32

回答

0

$xmlObj->xpath('/gallery/album')给你的专辑节点。

+0

是的,但我想从节点的属性.. – FFish 2010-05-16 15:00:09

+0

好吧,我得到它与$ foo = $ xmlObj-> xpath('// @ tnPath'); echo $ foo [0]; – FFish 2010-05-16 16:50:55