2013-03-26 28 views
0

對不起,如果我錯過了這裏的答案,但我真的找不到它之間的所有屬性問題。數組Simplexml訪問屬性不同的方式

我使用SimpleXML來解析RSS源,並在開發中的作品大(XAMPP)

的var_dump:

object(SimpleXMLElement)[672] 
    public '@attributes' => 
    array (size=2) 
     'name' => string 'A name' (length=11) 
     'description' => string 'A very long desc' (length=12) 

這對開發工作很適合我:

$desc = (string) $xml->attributes()['description']; 

...但不在我的網絡服務器上。我發現了一種解決方案,可以在兩種情況下使用:

$v = 'description'; 
$desc = (string) $xml->attributes()->$v; 

有人可以告訴我爲什麼。這是與版本相關的嗎? 再次:對不起,問題之前已被問過。

編輯: 我剛剛發現,這個作品也:

$a = $xml->attributes(); 
$desc = (string) $a['description']; 

同樣的問題:-)

回答

2

這有什麼好做的SimpleXML直接 - 訪問一個數組中的元素是由函數通過使用functioncall()['key']返回僅在PHP版本5.4以後纔有可能。

http://www.php.net/manual/en/language.types.array.php

「作爲PHP 5.4的能夠陣列取消引用函數或方法調用直接的結果。之前只能使用臨時變量。「

+0

非常感謝。我知道這很容易。對我來說最新的是,我在開發中使用php5.4! :-) 我更新了標籤和標題並添加了'數組' – Sammy 2013-03-26 09:30:00