Maison développement back-end tutoriel php [manuel php] constantes

[manuel php] constantes

May 15, 2018 pm 05:01 PM
php 常量 手册

Cet article présente principalement les constantes en PHP. Les amis intéressés peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Une constante est un identifiant (nom) d'une valeur simple. La portée des constantes est globale. Les constantes sont sensibles à la casse par défaut. Traditionnellement, les identifiants constants sont toujours en majuscules

Les noms de constantes suivent les règles de dénomination des balises PHP, commençant par une lettre ou un trait de soulignement, suivis de lettres, de chiffres ou de traits de soulignement. L'expression régulière est : [a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*

字母指的是 a-z,A-Z,以及从 127 到 255(0x7f-0xff)的 ASCII 字符。
Copier après la connexion
Example #1 合法与非法的常量名
<?php
// 合法的常量名define("FOO",     
"something");define("FOO2",    
"something else");define("FOO_BAR", "something more");// 非法的常量名
define("2FOO",    "something");
// 下面的定义是合法的,但应该避免这样做:(自定义常量不要以__开头)
// 也许将来有一天PHP会定义一个__FOO__的魔术常量
// 这样就会与你的代码相冲突define("__FOO__", "something");
?>
Copier après la connexion

Syntaxe

Définir des constantes :

用 define() 函数定义常量。用 defined() 函数检查是否定义了某常量。
用 const 关键字在类定义之外定义常量(PHP 5.3.0)。
Copier après la connexion

L'utilisation du mot-clé const pour définir des constantes doit être dans la portée la plus élevée, car cette méthode est définie au moment de la compilation. Cela signifie que vous ne pouvez pas utiliser const pour définir des constantes dans des fonctions, des boucles et des instructions if.

常量只能包含标量数据(boolean,integer,float 和 string)。可以定义 resource 常量,
但会造成不可预料的结果。

动态常量名,用函数 constant() 获取常量值。用 get_defined_constants() 可以获得所有
已定义的常量列表。
Copier après la connexion

Les différences entre les constantes et les variables sont les suivantes :

常量前面没有美元符号($);
常量只能用 define() 函数定义,而不能通过赋值语句;
常量可以不用理会变量的作用域而在任何地方定义和访问;
常量一旦定义就不能被重新定义或者取消定义;
常量的值只能是标量。

*常量和(全局)变量在不同的名字空间中。这意味着例如 TRUE 和 $TRUE 是不同的。
Copier après la connexion
Example #1 定义常量
<?php
  define("CONSTANT", "Hello world.");echo CONSTANT;
 // outputs "Hello world."echo Constant;
 // 输出 "Constant" 并发出一个提示级别错误信息
?>
Copier après la connexion
Example #2 使用关键字 const 定义常量
<?php
// 以下代码在 PHP 5.3.0 后可以正常工作const CONSTANT = &#39;Hello World&#39;;
echo CONSTANT;
?>
Copier après la connexion

Constantes magiques

8 PHP Des constantes magiques" qui changent en fonction de leur emplacement dans le code.

__LINE__    文件中的当前行号。

__FILE__    文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。
自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对
路径(如果是符号连接,则是解析后的绝对路径),而在此之前的版本有时会包含一个相对路径。

__DIR__ 文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。它等价于
 dirname(__FILE__)。除非是根目录,否则目
录中名不包括末尾的斜杠。(PHP 5.3.0中新增) 

__CLASS__   类的名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该类被定义时的名字
(区分大小写)。在 PHP 4 中该值总是小写字母的。
类名包括其被声明的作用区域(例如 Foo\Bar)。注意自 PHP 5.4 起 __CLASS__ 对 
trait 也起作用。当用在 trait 方法中时,__CLASS__ 是
调用 trait 方法的类的名字。


__METHOD__  类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。

__NAMESPACE__   当前命名空间的名称(区分大小写)。此常量是在编译时定义的
(PHP 5.3.0 新增)。
Copier après la connexion
/*
__FUNCTION__ and __METHOD__ as in PHP 5.0.4 is that

__FUNCTION__ returns only the name of the function

while as __METHOD__ returns the name of the class alongwith the name of
the function
*/<?php
class trick{
      function doit()
      {
                echo __FUNCTION__;
      }      function doitagain()
      {
                echo __METHOD__;
      }
}$obj=new trick();$obj->doit();
// output will be ----  doit$obj->doitagain();
// output will be ----- trick::doitagain
Copier après la connexion

Recommandations associées :

Constantes système et variables système couramment utilisées dans thinkphp

Chargement de thinkphp5 Méthodes de chemins de ressources statiques et de constantes

Analyse du noyau PHP7 4 variables locales, variables globales, constantes

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Configuration du projet CakePHP Configuration du projet CakePHP Sep 10, 2024 pm 05:25 PM

Dans ce chapitre, nous comprendrons les variables d'environnement, la configuration générale, la configuration de la base de données et la configuration de la messagerie dans CakePHP.

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Date et heure de CakePHP Date et heure de CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Téléchargement de fichiers CakePHP Téléchargement de fichiers CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Routage CakePHP Routage CakePHP Sep 10, 2024 pm 05:25 PM

Dans ce chapitre, nous allons apprendre les sujets suivants liés au routage ?

Discuter de CakePHP Discuter de CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

Comment configurer Visual Studio Code (VS Code) pour le développement PHP Comment configurer Visual Studio Code (VS Code) pour le développement PHP Dec 20, 2024 am 11:31 AM

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

CakePHP créant des validateurs CakePHP créant des validateurs Sep 10, 2024 pm 05:26 PM

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.

See all articles