Comment accéder aux propriétés dans PHP ?
P粉518799557
P粉518799557 2023-09-05 18:50:40
0
1
615
<p>Suivi basé sur ce document : https://www.php.net/manual/en/lingual.oop5.references.php</p> <blockquote> <p>Un point clé de la programmation orientée objet PHP qui est souvent mentionné est que "les objets sont passés par référence par défaut". Ce n'est pas tout à fait exact. </p> </blockquote> <blockquote> <p>En PHP, les variables d'objet ne contiennent pas l'objet lui-même comme valeur. Il contient simplement un identifiant d'objet qui permet aux accesseurs d'objet de trouver l'objet réel. </p> </blockquote> <p>Comment cela fonctionne-t-il concrètement ? Par exemple, en C++, l'opérateur flèche semble implicitement déréférencer le pointeur puis accéder à la propriété comme si elle était accessible sur la variable objet elle-même. </p> <p>Voici comment je le comprends :</p> <pre class="brush:php;toolbar:false;">obj->prop (*obj).prop // Équivalent à la ligne ci-dessus</pre> <p>Cela a l’air très soigné. Dans les deux cas, l'appel de propriété est la somme de l'adresse de la variable objet et du décalage de la propriété. </p> <p>Mais comment ça marche en PHP ? La documentation suggère qu'un pointeur ne stocke pas une adresse mémoire, mais un « identifiant d'objet ». L'accès aux propriétés en PHP est-il un processus hautement abstrait, ou résout-il l'identifiant de l'objet en une adresse mémoire, puis y accède-t-il de la même manière que C++/Java, etc. ? </p>
P粉518799557
P粉518799557

répondre à tous(1)
P粉600845163

Il s'agit d'un processus hautement abstrait, et la similitude de syntaxe ne signifie pas que le code « tombera » dans un fonctionnement comme C/C++. Vous pouvez explorer le code pour voir comment il fonctionne sous le capot.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal