2009-11-16 67 views
0

如何顯示以下代碼中的單個值?php - 如何顯示來自SimpleXMLElement的值

SimpleXMLElement Object ( 
      [@attributes] => Array 
      ( 
         [stat] => ok 
         ) 
         [profile] => SimpleXMLElement Object 
         ( 
         [address] => SimpleXMLElement Object 
         ( 
         [country] => United Kingdom 
         ) 
         [displayName] => gareth 
         [name] => SimpleXMLElement Object 
         ( 
         [givenName] => Gareth 
         [familyName] => Davies 
         [formatted] => Gareth Davies 
         ) 
         [preferredUsername] => gareth 
         [providerName] => Google 
         [verifiedEmail] => [email protected] 
         ) 
         ) 

回答

1

SimpleXML section of the PHP Manual做得很好,展示瞭如何訪問對象中的數據。

從手動兩者(一些編輯),這顯示了基礎:

訪問的節點:

$xml->movie //first 'movie' node 

訪問一個特定節點

$xml->movie[0] //first 'movie' node 

訪問一個第二級別節點:

$xml->movie[0]->rating 

訪問節點的屬性:

$xml->movie[0]->rating['type'] 
0

SimpleXML元素中的屬性可以通過簡單地使用數組訪問器來顯示。

$simpleXml = ... 
$givenName = $simpleXml['givenName']; 
+0

$ simpleXml = ...? 會寫這個 $ simpleXml = simplexml_load_string($ auth_info); $ givenName = $ simpleXml ['givenName']; echo $ givenName; – gareth 2009-11-16 16:16:45

0

數組訪問器僅適用於@attributes子鍵。

您可以使用箭頭記號來訪問屬性:單獨

$simpleXml->name->formatted; 

或澆鑄的SimpleXmlElements使用數組訪問器:

$sxa = (array)$simpleXml->profile; 
echo $sxa['displayName']; 

如果你去了鑄造路線,你已經投在每個層面包含額外的元素。