亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

SimpleXML:選擇具有特定屬性值的元素

SimpleXML:選擇具有特定屬性值的元素

PHP
海綿寶寶撒 2019-06-21 16:10:17
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個贊

試試這個XPath:

/object/data[@type="me"]

因此:

$myDataObjects = $simplexml->xpath('/object/data[@type="me"]');

如果object不是文檔的根,請使用//object/data[@type="me"]相反。


查看完整回答
反對 回復 2019-06-21
?
慕姐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;

(用于下面的XML)

<Root><Customer type="human"><Name>Sam Jones</name></Customer></Root>


查看完整回答
反對 回復 2019-06-21
  • 2 回答
  • 0 關注
  • 406 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號