Les constantes en PHP
Les constantes en PHP
-
Introduction aux constantes PHP
- Les constantes sont un type de données spécifique en PHP. Contrairement aux variables, elles conservent leur valeur initiale tout au long du déroulement d’un script . Vous ne pouvez pas modifier la valeur d’une constante une fois qu’elle a été définie.
- La constante PHP est un nom ou un identifiant pour une valeur simple. Une valeur constante ne peut pas être modifiée pendant l’exécution du script.
- Par défaut, une constante est sensible à la casse.
- Par convention, les identificateurs de constante sont toujours en majuscules.
- Le nom d’une constante commence par une lettre ou un trait de soulignement, suivi d’un nombre quelconque de lettres, de chiffres ou de traits de soulignement.
- Si vous avez défini une constante, elle ne peut jamais être modifiée ou indéfinie.
- Les constantes PHP peuvent être définies de 2 façons :
- Utilisation de la fonction
define () - Utilisation du mot-clé
const -
La fonction native
define() - Pour créer une constante, utilisez la fonction
define()au lieu de l’opérateur d’affectation (=) utilisé pour les variables - La déclaration de constante se prépare au moyen de la fonction native
define()qui prend trois paramètres dont les deux premiers sont obligatoires.bool define ( string $name, mixed $value [, bool $case_insensitive] ) - Le premier paramètre de la fonction est une chaine de caractères qui définit le nom de la constante. Par convention, toutes les constantes doivent être écrites en majuscules.
- Le second est la valeur que l’on affecte à cette constante. Cela peut-être une chaîne de caractères, un entier, un réel ou bien encore un booléen.
- Le troisième argument est facultatif. C’est un booléen qui indique si l’interpréteur doit se soucier de la casse ou non de la constante.
- La fonction
define()est une fonction intégrée en PHP qui définit une constante. Les constantes ressemblent à des variables, sauf: - La valeur d’une constante ne peut pas être modifiée une fois qu’elle est définie.
- Les constants ne sont pas précédés par le signe ($) comme les variables.
- Les constantes sont accessibles quelle que soit la portée.
- Les valeurs constantes ne peuvent être que des chaînes et des nombres.
-
define()et tableau -
Déclaration d’une constante
- Comme tout le monde le sait (ou presque), l’eau bout à une température de 100°C (en théorie). Nous allons donc déclarer une première constante de nom TEMPERATURE_EBULLITION_EAU et qui renferme une information numérique de valeur 100.
-
Constantes prédéfinies en php
- Il existe beaucoup de constantes prédéfinies, en voici quelques unes
-
Le mot clé
const() - PHP a introduit un mot clé
constpour créer une constante. Le mot-cléconstdéfinit les constantes au moment de la compilation. C’est une construction de langage, pas une fonction. Les constantes définies à l’aide du mot-clé const sont sensibles à la casse . - Les constantes déclarées avec le mot-clé
constdoivent être déclarées à des points où elles peuvent être accessibles au morceau de code qui en aura besoin. Cela signifie simplement qu’ils ne sont pas comme ceux déclarés avec la fonctiondefine(), qui restent globaux, peu importe où ils sont déclarés. - Les constantes de mots clés
constdoivent être déclarées dans la portée globale. Les constantes déclarées avec ce mot clé sont sensibles à la casse. - Syntaxe
- Dans cette syntaxe, vous définissez le nom de la constante après le mot-clé
const. - Pour affecter une valeur à une constante, vous utilisez l’opérateur d’affectation (
=) et la valeur constante. - La valeur constante peut être par exemple un nombre, une chaîne ou un tableau.
- Exemple
- Avec cette déclaration, exemple_constest maintenant une constante avec la valeur 536 qui ne peut pas changer.
-
Comment utiliser la fonction
constant() -
Définir une constante :
- Avant d’utiliser
constant(), vous devez définir une constante. Vous pouvez le faire en utilisant la fonctiondefine()ou en utilisant le mot-cléconst(à partir de PHP 5.3) pour définir une constante. - Pour les constantes déclarées avec la fonction
define()et le mot-cléconst, leurs valeurs peuvent être retournées à l’aide de la fonctionconstant()en passant le nom de la constante entre guillemets en argument. Toute constante peut être utilisée uniquement par son nom. -
À l’aide de define() :
-
À l’aide de const :
-
Utilisation de
constant()pour obtenir la valeur de la constante : - Vous pouvez utiliser
constant()pour obtenir la valeur de la constante précédemment définie. Voici comment vous pouvez l’utiliser : - Dans cet exemple, la fonction constant(‘MA_CONSTANTE‘) retournera la valeur associée à la constante ‘MA_CONSTANTE‘, c’est-à-dire ‘Valeur de ma constante’, et cette valeur sera stockée dans la variable $valeur.
- Gardez à l’esprit que le nom de la constante doit être une chaîne (c’est pourquoi nous utilisons des guillemets simples autour du nom de la constante dans constant(‘MA_CONSTANTE’)).
- Si la constante n’existe pas,
constant()renverra null. Assurez-vous donc que la constante que vous essayez d’accéder a été définie auparavant. -
Exemple 2
Exemple
<?php
define("PI", 3.14);
echo constant("PI");
?>

-
Exemple 01
<?php
define('LANGUAGES', array(
'C',
'C++',
'JAVA',
'PYTHON'
));
echo LANGUAGES[3];
?>
Exemple 02
<?php
define('ANIMALS', array(
'chien',
'chat',
'oiseaux'
));
echo ANIMALS[1]; // affiche "chat"
?>
<?php
// Déclaration de la constante
define('TEMPERATURE_EBULLITION_EAU',100);
// Affichage de sa valeur
echo 'L\'eau bout à ', TEMPERATURE_EBULLITION_EAU ,'°C';
?>
| Constante | Description | Exemple |
|---|---|---|
| __FILE__ | Le chemin complet de la page en cours |
|
| __DIR__ | Contient le nom du dossier dans lequel est le fichier |
|
| __LINE__ | Le numéro de la ligne de la constante |
|
| PHP_VERSION | La version de l’analyseur PHP |
|
| PHP_OS | Le système d’exploitation du serveur |
|
| __FUNCTION__ | Contient le nom de la fonction actuellement définie ou {closure} pour les fonctions anonymes |
|
const CONSTANT_NAME = value;const exemple_const = 536;define('MA_CONSTANTE', 'Valeur de ma constante');
const MA_CONSTANTE = 'Valeur de ma constante';
$valeur = constant('MA_CONSTANTE');
echo $valeur;

