2011-12-26 131 views
2

這是我的XML:PHP XPATH評價

<?xml version="1.0" encoding="ISO-8859-1"?> 
<Translation language="en-US"> 
    <Field Name="SenderName">QueWay</Field> 
    <Field Name="PasswordRecovery">Password Recovery</Field> 
</Translation> 

現在我想用PHP來選擇文本 「QueWay」 使用XPath。我有什麼到目前爲止好:

$xml = new DOMDocument; 
$xml->load('../xdata/xml/translation/en-US/emails.xml'); 

$xpath = new DOMXPath($xml); 
$hrefs = $xpath->evaluate("/Translation/Field[@Name = 'SenderName']"); 

var_dump($hrefs); 

什麼它給了我是一個對象,我不能呼應它...

誰能幫助我?

回答

2

DOMXPath::evaluate()返回DOMNodeList。您可以訪問元素的數據,像這樣:

$name = $hrefs->item(0)->nodeValue; // QueWay 
+0

噢,謝謝你,做工精細。所以DOMNodeList實際上返回一個什麼的列表/數組?所有的愛爾蘭人,節點......? – Master345 2011-12-26 22:14:08

+2

@RowMinds:'DOMNodeList'是一個存儲'DOMNode'的對象,可以用'item()'方法訪問。 – 2011-12-26 22:16:52

+0

好吧,我明白知道得很清楚,謝謝:) – Master345 2011-12-26 22:17:54

0

現在我想用PHP來選擇文本「QueWay」使用XPath。

的XPath表達式求值時產生的字符串是

string(/*/Field[@Name='SenderName'])