Maison > développement back-end > Problème PHP > A quoi sert php définir

A quoi sert php définir

青灯夜游
Libérer: 2023-03-17 21:06:01
original
2152 Les gens l'ont consulté

En PHP, la fonction définir() est utilisée pour définir une constante, la syntaxe est "define($name, $value, $case_insensitive)" ; le paramètre "$case_insensitive" est utilisé pour spécifier si la constante est à la casse. sensible, la valeur par défaut est sensible à la casse, définir la valeur sur true signifie qu'elle n'est pas sensible à la casse. Une fois qu'une constante est définie, elle ne peut pas être redéfinie ou indéfinie.

A quoi sert php définir

L'environnement d'exploitation de ce tutoriel : système windows7, version PHP8, ordinateur DELL G3

define est une fonction intégrée en PHP, utilisée pour définir une constante.

Une constante est un simple identifiant. Cette valeur ne peut pas être modifiée lors de l'exécution du script (sauf pour les constantes dites magiques, qui ne sont pas des constantes). Les constantes sont sensibles à la casse par défaut. Normalement, les identifiants constants sont toujours en majuscules.

Les constantes sont similaires aux variables. La différence est qu'après la définition, la valeur de la constante ne peut pas être modifiée. Il n'est pas nécessaire d'utiliser le signe dollar ($) au début. la valeur de la constante ne peut être qu'une chaîne ou des nombres.

La fonction define() définit des constantes

Les noms de constantes légales ne peuvent commencer que par des lettres et des traits de soulignement, et peuvent être suivis de lettres, de chiffres ou de traits de soulignement de n'importe quelle longueur. En PHP, vous pouvez définir une constante via la fonction définir(). La syntaxe de la fonction définir() est la suivante :

define($name, $value , $case_insensitive)
Copier après la connexion
  • $name paramètre obligatoire, nom de la constante (doit être placé entre guillemets doubles ou simples). guillemets)

  • $ value est un paramètre obligatoire, la valeur de la constante

  • $case_insensitive paramètre facultatif, précise si elle est sensible à la casse, la valeur par défaut est sensible à la casse, définie sur true, cela signifie insensible à la casse

<?php
header("Content-type:text/html;charset=utf-8");
define(&#39;WebSite&#39;, &#39;php中文网&#39;);
echo WebSite.&#39;<br>&#39;;
?>
Copier après la connexion

A quoi sert php définir

Connaissances étendues :

Le mot-clé const définit des constantes

Après php5.3.0, vous pouvez utiliser le mot-clé const pour définir des constantes en dehors de la définition de la classe. Dans les versions précédentes, le mot-clé const ne peut être que. utilisé dans les cours.

Syntaxe :

const 常量名 = 常量值;
Copier après la connexion

Exemple :

<?php
const FOO = &#39;BAR&#39;;
echo FOO.&#39;<br>&#39;;
?>
Copier après la connexion

La différence entre définir() et const :

const définit des constantes au moment de la compilation, tandis que la méthode définir() définit des constantes au moment de l'exécution.

const ne peut pas être utilisé dans les instructions if, defne() peut être utilisé dans les instructions if. Un scénario courant de

if(...) {
    const FOO = &#39;BAR&#39;;//错误
}
if(...) {
    define(&#39;FOO&#39;, &#39;BAR&#39;);//正确
}
Copier après la connexion

define() consiste à déterminer d'abord si la constante a été définie avant de définir la constante :

if(defined(&#39;FOO)) {
    define(&#39;FOO&#39;, &#39;BAR&#39;)
}
Copier après la connexion

const Lors de la définition d'une constante, la valeur ne peut être qu'un scalaire statique (nombre, chaîne, vrai, faux , null) et définir La méthode () peut utiliser la valeur de n'importe quelle expression comme valeur d'une constante. À partir de PHP 5.6, const permet également d'utiliser des expressions comme valeur de constantes. Les noms de constantes définis par

const BIT_5 = 1 << 5; //PHP5.6后支持,之前的PHP版本不支持
define(&#39;BIT_5&#39;, 1 << 5);// 所有PHP版本都支持const 只允许简单的常量名,而define()可以把任何表达式的值用作常量名
Copier après la connexion
for ($i = 0; $i < 32; $i++) {
    define(&#39;BIT_&#39; . $i, 1 << $i);
}
Copier après la connexion

const sont sensibles à la casse, et les constantes insensibles à la casse peuvent être définies en passant true au troisième paramètre de la méthode définir().

define(&#39;FOO&#39;, &#39;BAR&#39;, true);
echo FOO; //BAR
echo foo; //BAR
Copier après la connexion

La liste ci-dessus présente quelques lacunes ou rigidité de const par rapport à définir(). Voyons pourquoi je recommande personnellement d'utiliser const au lieu de définir() pour définir des constantes (sauf si vous souhaitez utiliser const dans la liste ci-dessus). constantes définies dans la scène).

const a une meilleure lisibilité, const est une structure de langage plutôt qu'une fonction, et est cohérent avec la forme de définition des constantes de classe dans une classe.

const définit des constantes dans l'espace de noms actuel, et definition() doit transmettre le nom complet de l'espace de noms lors de la définition pour obtenir des effets similaires :

namespace A\B\C;
//To define the constant A\B\C\FOO:
const FOO = &#39;BAR&#39;;
define(&#39;A\B\C\FOO&#39;, &#39;BAR&#39;);
Copier après la connexion

Apprentissage recommandé : "Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal