你知道php常量是什么吗?怎么检测是不是已声明?
在之前的文章《你知道php变量有哪些设置值的方式吗》中,我们了解了什么是变量,变量声明和变量赋值的方法。这次我们来了解一下常量,看看常量是如何声明的,又是如何检测一个常量是不是已声明的。
在了解常量声明和检测常量是否存在操作之前,我们需要先了解什么是常量。
所谓常量,就是不能改变的量,一旦被定义,就不能被修改或取消定义;通常用来存储一个不被改变也不希望变化的数据。
变量有局部和全局之分,而常量不同,它贯穿整个脚本,作用域是自动全局的。
且变量可以储存许多类型的数据,而常量只能储存整型、浮点型、字符串、布尔型、数组类型( PHP7开始)的数据。
变量声明使用“$变量名=值;
”的形式,但常量不行,常量的声明需要借助define() 函数或者const关键字。
我们来看看下面一个例子:
<?php header("Content-Type: text/html;charset=utf-8"); //设置字符编码 define("CONSTANT", "Hello world!"); const name = '李华'; echo CONSTANT.'<br>'; echo name; ?>
在上面的代码中,我们使用define() 函数声明了一个常量“CONSTANT
”,值为“Hello world!
”;使用const关键字声明了一个常量“name
”,值为“李华
”。因此当使用echo输出这两个常量时(常量前面是没有美元符号$
的),会输出:
Hello world! 李华
了解了常量的声明方法,下面来看看检测常量是不是已声明(是否存在)的方法。
我们来看看这样一个例子:
<?php header("Content-Type: text/html;charset=utf-8"); //设置字符编码 define("CONSTANT", "Hello world!"); if(defined('CONSTANT')){ echo "常量 CONSTANT 是存在的,值为: ".CONSTANT; }else{ echo "常量 CONSTANT 是不存在的 "; } const name = '李华'; if(defined('name')){ echo "<br>常量 name 是存在的,值为: ".name; }else{ echo "<br>常量 name 是不存在的 "; } ?>
输出结果为:
可以看出我们只需要使用defined() 函数就可以检查检测常量是否存在了。下面简单了解一下该函数:
defined($name)
函数只接受一个参数$name
(待检测的常量名称,因为是字符串类型,所以需要使用引号包裹。),会返回一个 bool 类型的值,常量已定义则返回 true,未定义则返回 false。
好了就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程
最后给大家推荐一个PHP数组的免费视频教程:从0开始进入PHP的世界,快来学习吧!