2012-03-15 43 views
1

我有下面的XMLPHP/XPath的/ SimpleXML的:選擇所有屬性一次

$data = "<data> 
    <element name='A'>value1</element> 
    <element name='B'>value2</element> 
    <element name='C'>value3</element> 
    <element name='D'>value4</element> 
    <element name='E'>value5</element> 
</data>"; 

它加載在PHP中的SimpleXML對象。

使用下面的代碼行我能得到的所有值作爲一個數組

$values = array_map(create_function('$value', 'return (string) $value;'), $data->xpath("data/element")); 

print_r($values)

Array (
    [0] => value1 
    [1] => value2 
    [2] => value3 
    [3] => value4 
    [4] => value5 
) 

是否可以用同樣的方法用不同的XPath查詢返回的值的所有名稱屬性,沒有循環使用$data->xpath("data/element")創建的數組?

回答

0

使用該XPath表達式:

data/element/@name 
+0

是的,做工精良。 謝謝! – dizarter 2012-03-15 04:40:30

+0

@dizarter,不客氣。 – 2012-03-15 08:32:32