Nasıl nesne verilen ad değişkene almak istiyorum. $obj->@attributes['name'];
Açıkçası işe yaramaz.
SimpleXMLElement Object
(
[@attributes] => Array
(
[name] => Address
)
[value] => Address
)
Peki $obj['name']
?
Örneğin, bu kod kısmını atarsak:
$str = <<<XML
<root>
<a name="test">
glop
</a>
</root>
XML;
$xml = simplexml_load_string($str);
Ve bunlar:
var_dump($xml->a);
Alacak:
object(SimpleXMLElement)[2]
public '@attributes' =>
array
'name' => string 'test' (length=4)
string '
glop
' (length=18)
Ve
var_dump($xml->a['name']);
Alacak:
object(SimpleXMLElement)[4]
string 'test' (length=4)
Ve casting this to a string :
var_dump((string)$xml->a['name']);
Sonunda ne istediğini alır:
string 'test' (length=4)
yani, sadece niteliklerin değerlerini almak için dizi-erişimini kullanabilir.
Ben sadece $obj['name']
inanıyorum.
Onların basic usage doc daha fazla bilgi için bkz.