Hi!
Dazu müsstest Du die Methode (eigentlich scheint es ja sowieso eine Funktion zu sein) attributes() umschreiben,
Es ist eine Methode und zwar von SimpleXMLElement.
Das bezog sich auch auf den Rückgabewert. Ich war der Meinung, dass man Methoden mit Rückgabewerten auch Funktionen nennen müsste. Allerdings spricht die Literatur bei den Get-Akzessoren auch immer nur von Get-Methoden oder Gettern.
Die Unterscheidung zwischen Routienen mit und ohne Rückgabewert gibt es unter anderem bei Pascal, bei PHP sind das alles Funktionen. Und wenn diese Funktionen zu einer Klasse gehören, dann sind es Methoden. Für diese Bezeichnungen spielt es keine Rolle, ob Methoden einen Rückgabewert haben oder nicht.
$name = (string)$xmlObject->xmlElement[0]['Name'];
Das stellt aber einen erheblichen Eingriff in die Kapselung dar. Da sind wir wieder bei der Unsinnigkeit von OOP unter PHP angelangt ;-P
Was hat eine generell angenommene Unsinnigkeit mit einer konkreten Implementierung zu tun? Es gibt sicher einige Argumente gegen die Art und Weise, wie SimpleXML aufgebaut ist und wie (teilweise nicht einfach nachvollziehbar) die Möglichkeiten der SPL und "magischer" Methoden implementiert wurden. Wenn dir das nicht gefällt, kannst du immer noch die DOM-Extension nutzen. Die ist ordentlich aufgebaut und kommt ohne "Magie" aus.
Lo!