Lorsque vous travaillez avec des structures de données dynamiques, vous pouvez rencontrer le besoin d'accéder à des propriétés avec des noms invalides ou complexes. En particulier, si les données sont ingérées à partir d'une source externe, les noms de propriétés peuvent ne pas respecter la syntaxe standard de PHP.
Par exemple, considérons le code suivant :
$insertArray = array(); $insertArray[0] = new stdclass(); $insertArray[0]->Name = $name; $insertArray[0]->PhoneNumber = $phone;
Cela fonctionne bien pour les noms de propriétés valides. Cependant, des problèmes surviennent lorsque vous rencontrez des noms invalides, tels que :
$insertArray[0]->First.Name = $firstname;
Cette syntaxe n'est pas valide en PHP. Pour surmonter cette limitation, la solution suivante peut être employée :
Syntaxe complexe (bouclée) :
Grâce au support apporté par @AbraCadaver, l'utilisation d'une syntaxe complexe est recommandé pour les noms de propriétés non valides :
$insertArray[0]->{"First.Name"} = $firstname;
En utilisant cette approche, les propriétés portant n'importe quel nom, quelle que soit sa validité, sont accessibles dynamiquement en PHP. Cette flexibilité est particulièrement utile lorsqu'il s'agit d'intégrer des données provenant de services externes ou lorsque vous travaillez avec des structures de données générées dynamiquement.
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!