Skip to content

常量

PHP 中的常量是指一旦定义后其值不能被改变的标识符。常量值被定义后,在脚本的其他任何地方都不能被改变。

常量可以用 define() 函数或 const 关键字来定义。

一个常量由英文字母、下划线、和数字组成,但数字不能作为首字母出现。(常量名不需要加 $ 修饰符)。

PHP 常量的特点:

  • 不变性: 常量一旦定义,其值不能改变。
  • 全局作用域: 常量在定义后,可以在整个脚本的任何地方使用,无需使用 global 关键字。
    php
    define("URL", "https://www.example.com");
    
    function test() {
        echo URL;
    }
    
    test(); // 输出: https://www.example.com
  • 数据类型: 常量的值可以是标量数据类型(如布尔值、整数、浮点数、字符串)或数组(PHP 7 及以上版本)。
  • 区分大小写: 常量名称默认是区分大小写的。如果需要定义大小写不敏感的常量,可以在 define() 函数的第三个参数设置为 true。
  • 常量是一个简单值的标识符,该值在脚本中不能改变。

使用 define() 函数定义常量

define() 函数用于定义常量,语法如下:

php
define(name, value, case_insensitive);
  • name: 定义常量的名称。
  • value: 定义常量的值。
  • case_insensitive: 可选参数,如果设置为 true,则常量名称大小写不敏感。默认为 false。
php
define("URL1", "https://www.example.com");
echo URL1; // 输出: https://www.example.com
// echo url1; // 会报错,因为常量名区分大小写

define("URL2", "https://www.example.org", true);
echo URL2; // 输出: https://www.example.org
echo url2; // 输出: https://www.example.org

使用 const 关键字定义常量

PHP 5.3.0 及以上版本支持使用 const 关键字定义常量,语法如下:

php
const name = value;
  • name: 定义常量的名称。
  • value: 定义常量的值。
php
const URL = "https://www.example.com";
echo URL; // 输出: https://www.example.com

预定义常量

PHP 中有一些预定义常量,可以在任何脚本中使用。

  • PHP_VERSION:当前 PHP 解析器的版本。
  • PHP_OS:服务器的操作系统。
  • PHP_INT_MAX:最大的整数值。
  • E_ERROR、E_WARNING、E_PARSE 等:错误报告级别。

常量数组

PHP 7 及以上版本支持定义数组常量。

php
define("COLORS", [
    "red",
    "green",
    "blue"
]);

echo COLORS[0]; // 输出: red

魔术常量

PHP 还有一些特殊的常量,被称为魔术常量,它们的值会随着它们在代码中的位置而改变。

  • __LINE__:文件中的当前行号。
  • __FILE__:文件的完整路径和文件名。
  • __DIR__:文件所在的目录。
  • __FUNCTION__:函数名称。
  • __CLASS__:类名称。
  • __METHOD__:类的方法名。
  • __NAMESPACE__:当前命名空间的名称。
编程洪同学服务平台是一个广泛收集编程相关内容和资源,旨在满足编程爱好者和专业开发人员的需求的网站。无论您是初学者还是经验丰富的开发者,都可以在这里找到有用的信息和资料,我们将助您提升编程技能和知识。
专业开发
高端定制
售后无忧
站内资源均为本站制作或收集于互联网等平台,如有侵权,请第一时间联系本站,敬请谅解!本站资源仅限于学习与参考,严禁用于各种非法活动,否则后果自行负责,本站概不承担!