38. Constantes au Sein des Classes
Les constantes de classe sont des valeurs fixes associées à une classe, définies à l'aide du mot-clé const. Comme les propriétés statiques, elles appartiennent à la classe elle-même, et non à l'objet, et leurs valeurs ne peuvent pas changer pendant l'exécution.
Définition des Constantes de Classe
Les constantes sont automatiquement publiques, statiques et n'utilisent pas le préfixe $.
php
<?php class PaymentProcessor { const STATUS_PENDING = 'PENDING'; const STATUS_COMPLETE = 'COMPLETE'; const MAX_AMOUNT = 10000; public function checkMaxAmount($amount) { if ($amount > self::MAX_AMOUNT) { return false; } return true; } } ?>Accès aux Constantes de Classe
Les constantes de classe sont accessibles à l'aide de l'Opérateur de Résolution de Portée (::) :
- Depuis l'intérieur de la classe : Utilisez
self::CONSTANT_NAME. - Depuis l'extérieur de la classe : Utilisez
ClassName::CONSTANT_NAME.
php
<?php // Accès depuis l'extérieur echo "Montant maximal de transaction autorisé : " . PaymentProcessor::MAX_AMOUNT; // Résultat : 10000 // Utilisation de la constante dans la logique $processor = new PaymentProcessor(); $transaction_status = PaymentProcessor::STATUS_PENDING; if ($transaction_status == PaymentProcessor::STATUS_PENDING) { echo "<br>Traitement de la transaction en cours..."; } ?>Avantage : L'utilisation de constantes au lieu de chaînes magiques (chaînes brutes comme 'PENDING') rend le code plus sûr, plus facile à refactoriser et plus lisible.