Zugriff auf das Rätsel der @attributes von SimpleXML
Sind Sie auf Schwierigkeiten beim Abrufen von @attributes aus Ihrem SimpleXML-Objekt gestoßen? Verzweifeln Sie nicht!
Es ist rätselhaft, wenn die Untersuchung des gesamten Objekts die erwartete Ausgabe liefert, aber ein Drilldown zum Zugriff auf die Attribute Sie mit einem leeren Rätsel zurücklässt. Der folgende Code veranschaulicht das Problem:
$xml = simplexml_load_string('<OFFICE Token="123" Name="Bob Smith">...'); var_dump($xml); // Outputs the entire XML object var_dump($xml->OFFICE); // Outputs the nested tag var_dump($xml->OFFICE->{'@attributes'}); // Empty object, despite attributes being present
Es gibt jedoch ein verstecktes Juwel, das das Geheimnis des Zugriffs auf diese schwer fassbaren Attribute enthüllt:
$xml->attributes()->Token // Output: 123
Mit dieser Syntax können Sie die Notwendigkeit umgehen Geben Sie {'@attributes'} explizit an. Stattdessen wird auf die Attribute selbst direkt als Eigenschaften des attributes()-Objekts zugegriffen.
Wenn Sie also das nächste Mal Schwierigkeiten haben, @attributes abzurufen, nutzen Sie diese einfache, aber leistungsstarke Technik. Dies ist der Schlüssel, um mit SimpleXML die Fülle an Informationen zu erschließen, die in XML-Dokumenten verborgen sind.
Das obige ist der detaillierte Inhalt vonWie kann ich auf @attributes in SimpleXML-Objekten zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!