Accès aux propriétés de classe avec des espaces
Dans la programmation orientée objet, il est souvent souhaitable d'accéder aux propriétés dont les noms contiennent des espaces. Cependant, cela peut présenter des difficultés lorsqu'on tente de récupérer ces propriétés à l'aide de la notation par points traditionnelle. Explorons une solution à ce problème.
Considérons l'objet stdClass suivant :
<code class="php">$object = new stdClass(); $object->{'Sector'} = 'Manufacturing'; $object->{'Date Found'} = '2010-05-03 08:15:19';</code>
Dans cet exemple, nous avons une propriété nommée "[Secteur]" et une autre propriété nommée "[Date Trouvé]". Accéder à "[Secteur]" à l'aide de $object->Sector est simple. Cependant, accéder à "[Date Found]" à l'aide de $object->{'Date Found'} est nécessaire en raison des espaces dans son nom.
La raison de l'utilisation d'accolades autour du nom de la propriété lorsqu'elle contient les espaces sont qu'ils nous permettent de traiter la chaîne comme une expression et la valeur qu'elle contient comme nom de propriété. Sans accolades, l'opérateur point n'évaluerait que les caractères avant le premier espace.
Cette solution vous permet d'accéder aux propriétés de classe avec des espaces en utilisant la syntaxe suivante :
<code class="php">$object->{'Property Name'}</code>
Dans le Dans le cas de notre exemple, vous accéderiez à « [Date trouvée] » comme suit :
<code class="php">$dateFound = $object->{'Date Found'};</code>
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!