常量| 学习笔记

简介: 快速学习常量。

开发者学堂课程【PHP 基础入门课程(上) :常量】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/709/detail/12587


常量

 

内容介绍

一、概念

二、步骤

三、示例

四、小结

 

思考一下,变量的值可以随时变化的,那如果在进行系统开发的时候,有些数据不希望被乱改怎么办?

所以说此时要用到另外一种数据存储的方式,它叫做常量。这一节就要学习常量,需要掌握的一个目标是了解常量的概念以及 PHP 中常量的使用。

 

一、概念

常量:

其实它也是一种存储数据的符号,也就是系统内部定义的存储数据的符号,那么它的规则是通常用大写字母,另外一个核心的一点是常量数据一旦被定义,就不可以改变。那么在当前脚本的一个运行过程中,它是不会被任何东西以任何方式进行改变的,只有定义和使用这么一说。

 

二、步骤

1、定义常量

•使用函数: define (常量名',常量值);

•使用关键字: const  常量名=常量值;

这样就完成了一个定义,那怎么去访问呢?

2、访问常量

•直接访问:常量名;

•使用函数: constant ('常量名");

这是定义和访问,那此时没有说修改和删除,那是因为修改和删除做不了,只可以定义和使用,这是常量的特性。

 

三、示例

定义一个版本号 VERSION ,那么此时给它一个值1.0版本这是一种方式,使用函数cost 第一个也可以叫3.14这也是一种定义方式,要使用的话会怎么样?直接 echo 或者 constant('VERSION') 就可以了。

看一下代码运行,Php 的一个常量讲解,然后我们首先来定义一个常量,两种方式都可以,第一个 define 关键字,然后第一个要给它的是一个名字叫做 name ,常量通常全大写,比如说我要给它一个值,那么就叫做什么?

就可以叫做 value ,这是给它的一个值。然后接下来还可以使用另外一种方式,比如说 const ,它等于3.14,此时这个使用 const 方式的名字是不需要加引号的,不需要加引号直接定义就可以了,然后定义好了之后,接下来要去访问它,然后怎么办呢?

echo NAME 就可以了。我们来看一下,走一个发现 value 被输出了,说明取到了 name 对应的一个值。

然后第二种再来看一下,  echoPI 记一下,3.14也被输出了,这是一种保温方式。那我们再来, echo  const 一个,比如说要访问的是 PI ,这个时候必须要接引号,看看能不能访问到,办不到也扫不到了3.14。那另外一个其实也是一样的,所以不要在举同一个例子。那么这就是一个常量的定义和使用。那比如说是不是可以去修改它呢?

可以尝试去修改一下,比如说尝试怎么办呢?

PI=5看看会是个什么效果?它的结果是一个语法错误,不仅仅不是一个等号,又是一个解析错误,所以这种方式本身就是错误的一种方式。所以常量代表不可修改,有人说可不可以用 const 等于一个值呢?那也可以去试一下, const PI 等于四,回头刷新一下,其实给了我们一个警告,说这个常量已经什么定义过了,这个 const PI Already define 已经定义过了,所以不能定义了,那说明常量不能重复定义,那言外之意是那个四已经不存在了,就没有价值了。

值虽然它是一个不影响,好像这个错误比较小,那刷新一下就知道它还是3.14,说明这个修改是失败的。修改失败啊并且不允许修改这就是常量的特性。

1 <?php

2

3

4

5

6 #定义常量

7 define('NAME','value);

8 const PI=3.14;

9

10 #访问

11 echo NAME;

12 echo PI;

13

14 echo constant('PI');

15

16 //PI=5 #错误

17 //const PI =4; #修改失败: 不允许修改

18 echo PI;

#使用函数定义

定义一个版本号,此时在给它一个值1.0版本

define('VERSION',1.0);这是一种方式

#使用关键字定义

const PI = 3.14;

#直接访问

echo PI;

#使用函数访问

echo constant('VERSION');

常量规则

1、常量名字通常使用大写(允许小写,但是程序员一般不这样去使用,为了区分变量和常量,尤其是在其他的语言当中,没有明确的符号开始变量,那么如果不使用大写的话,那么会导致常量和变量区分不出来,所以说默认都使用大写)

2、名字由字母、下划线和数字组成,不能以数字开头

3、常量名定义应该做到见名知意

4、复杂常量名通常使用下划线法,因为此时就没有所谓的驼峰法了。

5、常量名字可以比较松散,但是不建议使用,如 define ('-_-;笑脸)是系统允许的(访问时就必须使用函数访问)

那来试一下再来定义一个不建议使用的常量,怎么办呢?这个时候还有一个特点,只能使用 define ,因为 const 没有一个引号,系统就会直接就识别了,这样会导致语法错误。

因为不允许出现其他的符号,那 define 怎么办呢?比如说我想出现一个(^-_-^,^smile^),然后给它一个值叫 smile ,同时想那输出呢?先别急着输出,先看一下它有没有会报错,答案是没有。因此说明说明这种方式系统是接受的,那也就是说要输出//echo -_-,那看一下果会什么样子?

又告诉语法错误,不期待出现一个分号,它也不知道要出现什么东西,所以此时不能用这种方式去访问。只能用echo constant,然后后面给它(^-_-^),再看看行不行,刷新一下输出,因此说明这种方式是可以的,这就是常量,但是这种方式不建议用的。

19

20 #定义一个不建议使用的常量名

21 define(^-_-^,^smile^);

22

23 //echo -_-;     #错误访问

24 echo constant(^-_-^);

25

最后做一个扩展,PHP7 以后常量允许定义数组常量(一次性定义多个常量),访问时使用数组下标访问#定义数组常量

const MATH = array(

'PI’=> 3.14,

'E'=> 2.72

);

#访问

echo MATH['PI'];

 

四、小结

1、常量是用来保留一些不希望改变的数据的,因为它只能定义和使用,不能被改变。

2、常量使用函数 define 或者关键字 const 定义,二者有些区别,在后面学习的时候会遇到再进行详细讲解。

3、常量在定义后只能访问,不能修改和删除,如果能修改和删除的话,就和变量没有什么区别了,因为把它删了再去新增一个,也会新置。

4、 PHP 常量在 PHP7 以后允许值为数组

这个后续会详细讲解,这就是 PHP7 数组的第二种存储方式,叫做常量。

相关文章
|
4月前
|
C++
【学习笔记】【C/C++】 c++字面值常量
【学习笔记】【C/C++】 c++字面值常量
46 1
|
7月前
|
C语言
c常量
c常量
42 1
|
7月前
|
安全 编译器 C++
5常量
5常量
37 1
|
存储
C 常量
C 常量。
35 1
|
存储 程序员 C++
C++(两种不同的常量)
C++(两种不同的常量)
|
存储 C++
C++ 之什么是常量?
常量是固定值,在程序执行期间不会改变。这些固定的值,又叫做字面量。 常量可以是任何的基本数据类型,可分为整型数字、浮点数字、字符、字符串和布尔值。 常量就像是常规的变量,只不过常量的值在定义后不能进行修改。
|
存储 机器学习/深度学习 移动开发
C语言入门(二)——常量,变量和表达式
C语言入门(二)——常量,变量和表达式
C语言入门(二)——常量,变量和表达式
|
人工智能 C# 索引
C# 常量
常量的广义概念是:不变化的量。在C#中,除了那些已经写死的,如:“hello”,4,2.718等字面量以外,我们还可以自定义一个常量。C#与变量的定义十分相似,其中,const为C#中的关键字,表示常量。data_type为数据类型,为常量名,value为初始值。const string myName = "小嗷犬";
105 0
C# 常量
|
C语言
C语言入门(一)常量、变量
C语言入门(一)常量、变量
269 0
C语言入门(一)常量、变量
|
存储 PHP 开发者
系统常量| 学习笔记
快速学习系统常量。
系统常量| 学习笔记