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.