SimpleXML:選擇具有特定屬性值的元素在XML文檔中,我有共享名稱的元素,但是屬性的值定義了它是什么類型的數據,我想從文檔中選擇所有具有一定值的元素。我是否需要使用XPath(如果需要,您可以建議正確的語法)還是有更優雅的解決方案?下面是一些XML示例:<object>
<data type="me">myname</data>
<data type="you">yourname</data>
<data type="me">myothername</data></object>我想選擇所有的內容<data>標記<object>誰的類型是me.PS-我正試圖用PHP與NetflixAPI進行接口-這對我的問題來說并不重要,但如果你想提出一個好的/更好的方法來這樣做,我會全神貫注的。
2 回答

繁花如伊
TA貢獻2012條經驗 獲得超12個贊
/object/data[@type="me"]
$myDataObjects = $simplexml->xpath('/object/data[@type="me"]');
object
//object/data[@type="me"]

慕姐4208626
TA貢獻1852條經驗 獲得超7個贊
function query_attribute($xmlNode, $attr_name, $attr_value) { foreach($xmlNode as $node) { switch($node[$attr_name]) { case $attr_value: return $node; } }}
echo query_attribute($MySimpleXmlNode->Customer, "type", "human")->Name;
<Root><Customer type="human"><Name>Sam Jones</name></Customer></Root>
- 2 回答
- 0 關注
- 406 瀏覽
添加回答
舉報
0/150
提交
取消