PHP基本语法——PHP常量

本文介绍了PHP中定义和使用常量的方法,包括使用define()和const函数,以及如何获取常量的值和判断常量是否存在。常量是不可变的,其作用域全局,适用于存储不变的数据。
摘要由CSDN通过智能技术生成

PHP define()和const:定义常量

什么是常量

所谓常量就是不能改变的量,PHP 中常量一旦被定义,就不能被修改或取消定义。

PHP 常量通常用来存储一个不被改变也不希望变化的数据,该数据只能是四种标量数据类型的数据:整型、浮点型、字符串、布尔型,不过从 PHP7 开始常量支持了数组(array)类型。

与变量相比,常量具有以下几个特点:

  • 常量前面没有美元符号($);
  • 常量只能用 define() 和 const 定义;
  • 常量的作用域是全局的;
  • 常量一旦被定义就不能被重新定义或者取消定义。

定义常量

合法的常量名只能以字母和下划线开始,后面可以跟着任意长度的字母、数字或下划线。在 PHP 中可以通过 define() 函数定义一个常量,define() 函数的语法如下:

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

define() 函数参数的说明如下表所示:

参数说明
$name必选参数,常量名称(需要使用双引号或单引号包裹)
$value必选参数,常量的值
$case_insensitive可选参数,指定是否大小写敏感,默认是大小写敏感的,设定为 true 则表示大小写不敏感

除了可以使用 define() 函数之外,还可以使用 const 关键字来定义常量,const 关键字的语法如下:

const 常量名 = 常量值;

下面通过示例来演示一下常量的使用:

<?php
    define('WebSite', 'C语言中文网');
    const url = 'http://c.biancheng.net/php/';
    echo WebSite.'<br>';
    echo url;
?>

运行结果如下:

C语言中文网
http://c.biancheng.net/php/

获取常量的值

想要获取常量的值,除了可以直接使用常量名外,还可以使用 constant() 函数,使用函数和直接使用常量名的效果是一样的。但使用函数可以动态输出不同的常量,在使用上要灵活、方便得多,constant() 函数的语法格式为:

constant(string $name);

其中 $name 为要获取的常量名称,也可以是存储常量名的变量。如果成功则返回常量的值;如果常量未定义则返回一个 E_WARNING 级别的错误。示例代码如下:

<?php
    define('WebSite', 'C语言中文网');
    const url = 'http://c.biancheng.net/php/';
    $website = 'WebSite';
    $url = 'url';
    echo constant($website).'<br>';
    echo constant($url);
?>

运行结果如下:

C语言中文网
http://c.biancheng.net/php/

判断常量是否存在

要判断一个常量是否已经定义,可以使用 defined() 函数。函数的语法格式如下:

defined(string $name)

其中 $name 为待判断的常量名称,函数会返回一个 bool 类型的值,常量已定义则返回 true,未定义则返回 false。示例代码如下:

<?php
    define('WebSite', 'C语言中文网');
    const url = 'http://c.biancheng.net/php/';
    var_dump(defined('WebSite'));
    echo '<br>';
    var_dump(defined('url'));
?>

运行结果如下:

bool(true)
bool(true)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农的时代

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值