Accéder à l'énigme des @attributs à partir de SimpleXML
Vous rencontrez des difficultés pour récupérer les @attributs à partir de votre objet SimpleXML ? Ne désespérez pas !
C'est déroutant lorsque l'inspection de l'objet entier donne le résultat attendu, mais explorer en profondeur pour accéder aux attributs vous laisse avec une énigme vide. Le code ci-dessous illustre le problème :
$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
Cependant, il existe un joyau caché qui dévoile le secret de l'accès à ces attributs insaisissables :
$xml->attributes()->Token // Output: 123
Cette syntaxe vous permet de contourner le besoin de spécifiez explicitement {'@attributes'}. Au lieu de cela, les attributs eux-mêmes sont accessibles directement en tant que propriétés de l'objetattributs().
Donc, la prochaine fois que vous aurez du mal à récupérer @attributes, adoptez cette technique simple mais puissante. C'est la clé pour déverrouiller la richesse des informations cachées dans les documents XML à l'aide de SimpleXML.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!