Maison >développement back-end >tutoriel php >Comment puis-je accéder aux propriétés d'objet PHP avec des noms illégaux comme « éléments à faire » ?
Accès aux propriétés avec des noms illégaux en PHP
Dans PHP, accéder aux propriétés d'objets avec des noms illégaux, tels que ceux contenant des tirets (-), peut être un défi. Considérons le scénario suivant :
Problème :
Vous avez récupéré un objet depuis un appel API, et malgré son var_dump révélant la présence d'une propriété "todo-items" , vous ne pouvez pas y accéder directement en utilisant $object->todo-items.
Solution :
Il existe plusieurs méthodes pour accéder à ces propriétés :
Encapsulation du nom de la propriété :
PHP vous permet d'encapsuler les noms de propriétés entre accolades pour y accéder directement. Cela fonctionne même pour les noms illégaux :
$object->{'todo-items'}
Affectation de variable :
Attribuez le nom de la propriété à une variable et accédez-y à l'aide de la variable entre crochets :
$todolist = 'todo-items'; $object->$todolist
Tableau Conversion :
Convertissez l'objet en tableau en utilisant une technique comme celle employée par Zend_Config :
public function toArray() { $array = array(); foreach ($this->_data as $key => $value) { if ($value instanceof StdClass) { $array[$key] = $value->toArray(); } else { $array[$key] = $value; } } return $array; }
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!