Pourquoi certaines méthodes de classe PHP ont-elles un trait de soulignement principal ?

DDD
Libérer: 2024-11-10 19:15:03
original
267 Les gens l'ont consulté

Why Do Some PHP Class Methods Have a Leading Underscore?

Quel est le problème avec un trait de soulignement principal dans les méthodes de classe PHP ?

Les développeurs PHP préfixent certaines méthodes de classe avec un seul trait de soulignement, comme _foo (), au lieu de foo(). Bien qu'il s'agisse en fin de compte d'une préférence personnelle, cette technique a ses racines dans PHP 4.

Avant l'introduction de la POO dans PHP 4, il n'y avait pas de méthodes protégées ou privé. Les développeurs ont fait précéder les méthodes destinées à être d'un trait de soulignement pour décourager l'accès externe. La convention est similaire à la syntaxe dans d'autres langues. Dans les classes plus anciennes, les développeurs annotaient parfois les méthodes avec /***/ __foo().

Il est important de noter que toutes les méthodes commençant par un trait de soulignement ne sont pas censées être . Au fil du temps, certains développeurs ont peut-être étendu la convention pour différencier les méthodes internes et externes. Cependant, ce n'est pas une pratique standard et a prêté à confusion.

Dans PHP moderne, il est préférable d'utiliser les modificateurs de visibilité appropriés (public, protected, ) pour définir l'accessibilité des méthodes. La présence d'un trait de soulignement seul ne doit pas être interprétée comme une restriction sur l'utilisation de la méthode.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal