Conventions de Nom

Classes

Les classes doivent avoir un nom parlant. éviter les abréviations lorsque cela est possible. Les noms de classes doivent toujours commencer par une majuscule. L'architecture hiérarchique des classes PEAR se retrouve aussi dans le nom de la classe, chaque niveau de la hiérarchie étant séparé par un unique trait souligné (_). Exemples de noms de classe valides :

Log

Net_Finger

HTML_Upload_Error

Fonctions et Méthodes

Les fonctions et les méthodes doivent être nommées en utilisant le style "studly caps" (NDT : Utilisation de majuscules en milieu de mot pour marquer visuellement la séparation entre les mots sans utiliser d'espaces ou séparateurs, aussi connus sous les noms de "bumpy case" ou "camel caps"). Les fonctions doivent de plus avoir le nom du paquetage comme préfixe, pour éviter les doublons entre les paquetages. La première lettre du nom (après le préfixe pour une fonction) est une minuscule, et chaque premier caractère d'un nouveau "mot" doit être une majuscule. Quelques exemples :

connect()

getData()

buildSomeWidget()

XML_RPC_serializeData()

Les éléments (méthodes, attributs) privés d'une classe sont précédés d'un simple souligné (_) (ces éléments sont destinés à n'être utilisés que par la classe qui les déclarent ; PHP ne supportant pas encore le contrôle des noms privés). Par exemple :

_sort()

_initTree()

$this->_status

Ce qui suit a été ajouté en PHP5.

Les membres protégés d'une classe (c'est-à-dire les membres d'une classe qui sont prévus pour être utilisés uniquement depuis la même classe que celle qui les a déclarés ou depuis les sous-classes qui l'étendent) ne sont pas précédés par un underscore (_). Par exemple :

protected $somevar

protected function initTree()

Constantes

Les constantes doivent toujours être en majuscule, les mots séparés par des '_'. Préfixez les noms des constantes avec le nom en majuscule de la classe/paquetage dans laquelle elle est utilisée. Par exemple, les constantes utilisées par le paquetage DB:: commencent toutes par DB_.

Les constantes true, false et null font exception à la règle des majuscules, et doivent toujours être en minuscules.

Variables globales

Si votre paquetage a besoin de définir des variables globales, leurs noms doivent commencer par un simple '_' suivi par le nom du paquetage et un autre '_'. Par exemple, le paquetage PEAR utilise une variable globale appelée $_PEAR_destructor_object_list.

Exemple d'URLs (Previous) Formats des fichiers (Next)
Last updated: Sun, 29 Aug 2010 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report or add a note.
View this page in:

User Notes:

Note by: user@example.com
codextasy, I've read some PEAR packages code and they use "public $foo_bar" and "private $_foo_bar".
Note by: codextasy
What about local variables inside functions and methods:
$my_local_var or $myLocalVar?
Note by: Carl
Yes, PHP 5.x has truly private methods and properties if they are preceded by the "private" keyword.
Note by: hablutzel1@hotmail.com
I supposed that in php5 private properties are really private. or is it wrong?
Note by: user@example.com
PHP does not yet support truly-enforceable private namespaces

In PHP 5 you have truly-enforceable private namespaces, don't you?