Constantes PHP


Les constantes en PHP sont des identificateurs dont la valeur ne peut pas être modifiée une fois définie.

Une fois la valeur d'une constante définie, elle ne peut pas être modifiée ailleurs dans le script.

Les constantes peuvent être définies en utilisant la fonctiondefine()ou le mot-cléconst.

Caractéristiques des constantes


Constantes PHP

  1. Immutabilité: Une fois une constante définie, sa valeur ne peut pas être modifiée.
  2. Portée globale: Une fois une constante définie, elle peut être utilisée n'importe où dans tout le script sans utiliser leglobalmot-clé.
  3. Types de données: La valeur d'une constante peut être un type de données scalaire (tel que booléen, entier, flottant, chaîne de caractères) ou un tableau (PHP 7 et versions ultérieures).
  4. Sensibilité à la casse: Les noms de constantes sont sensibles à la casse par défaut. Si vous devez définir une constante insensible à la casse, vous pouvezdefine()définir le troisième paramètre de la fonction àtrue。

Une constante est un identifiant pour une valeur simple qui ne peut pas être modifiée dans le script.

Une constante est composée de lettres anglaises, de traits de soulignement et de chiffres, mais les chiffres ne peuvent pas apparaître comme premier caractère. (Les noms de constantes n'ont pas besoin du modificateur $.)

Remarque :Les constantes peuvent être utilisées dans tout le script.


Définition des constantes PHP

Pour définir une constante, utilisez la fonction define(), dont la syntaxe est la suivante :

bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )

La fonction a trois paramètres :

  • name:Paramètre obligatoire : le nom de la constante, c'est-à-dire l'identifiant.

  • value:Paramètre obligatoire : la valeur de la constante.

  • case_insensitive : Paramètre facultatif. S'il est défini sur TRUE, la constante sera insensible à la casse ; la valeur par défaut est sensible à la casse.

    Remarque :Depuis PHP 7.3.0, la définition de constantes insensibles à la casse est obsolète. À partir de PHP 8.0.0, seule la valeur false est acceptable ; passer true générera un avertissement.

Dans l'exemple suivant, nous créons uneconstante sensible à la casse(non recommandé après PHP 7.3), avec la valeur de constante "Welcome to example.com" :

Exemple

<?php //Nom de constante sensible à la casse define("GREETING", "Bienvenue sur example.com"); echo GREETING; //Sortie "Bienvenue sur example.com" echo '<br>'; echo greeting; //Sortie "greeting", mais avec un avertissement indiquant que la constante n'est pas définie. ?>

Dans l'exemple suivant, nous créons uneconstante insensible à la casse, avec la valeur de la constante "Bienvenue sur example.com" :

Exemple

<?php //Nom de constante insensible à la casse define("GREETING", "Bienvenue sur example.com", true); echo greeting; //Sortie "Bienvenue sur example.com" ?>

Les constantes sont globales

Après qu'une constante est définie, elle est une variable globale par défaut et peut être utilisée n'importe où dans l'ensemble du script en cours d'exécution.

L'exemple suivant montre l'utilisation d'une constante à l'intérieur d'une fonction ; même si la constante est définie en dehors de la fonction, elle peut quand même être utilisée normalement.

Exemple

<?php define("GREETING", "Bienvenue sur example.com"); function myTest() { echo GREETING; } myTest(); //Sortie "Welcome to example.com" ?>

Utilisation du mot-clé const

const CONSTANT_NAME = "value";

Voici un exemple de définition d'une constante à l'aide du mot-clé const :

Exemple

const SITE_URL = "https://www.example.com";
echo SITE_URL; // Sortie "https://www.example.com"

Constantes prédéfinies

PHP fournit quelques constantes prédéfinies qui peuvent être utilisées directement dans les scripts. Ces constantes sont couramment utilisées pour obtenir des informations de configuration PHP, des informations de version, etc. Les constantes prédéfinies courantes incluent :

  • PHP_VERSION: La version de l'analyseur PHP actuel.
  • PHP_OS: Le système d'exploitation du serveur.
  • PHP_INT_MAX: La valeur entière maximale.
  • E_ERROR、E_WARNING、E_PARSEetc. : Niveaux de rapport d'erreurs.

Exemple

echo PHP_VERSION; // Affiche la version de PHP, par ex. "7.4.1"
echo PHP_OS;      // Affiche le système d'exploitation, par ex. "Linux"
echo PHP_INT_MAX; // Affiche la valeur entière maximale, par ex. "9223372036854775807"

Tableaux constants (PHP 7 et versions ultérieures)

À partir de PHP 7, les constantes peuvent également être des tableaux.

Exemple

define("FRUITS", [
    "Apple",
    "Banana",
    "Orange"
]);

echo FRUITS[0]; // Affiche "Apple"

Ou en utilisant const :

Exemple

const COLORS = [
    "Red",
    "Green",
    "Blue"
];

echo COLORS[1]; // Sortie "Green"
Autres extensions