- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PHP语言基础(三)
PHP常量
1.声明和使用常量
常量可以理解为值不变的变量。常量值被定义后,在脚本的其他任何地方都不能改变。常量通常具有如下的属性:
常量区分大小写,在定义的时可以指定是否大小写敏感。
其命名的规则和变量一样
常量的开头字母只能是字母和下划线,后面可以接任意个数的字母字符。
默认的情况下,它的作用域是全局的,即在当前当前脚本的任何地方都可以使用。
已定义常量的名称不能与再次定义的常量和变量的名称相同
在定义常量时,应该尽可能使用大写字符,便于阅读和识别。
常量的名称不能以字符$开头,它们的值只能是特定类型的:整数、浮点数、字符串和布尔值。
在PHP中通常使用define()函数来定义常量;使用constant()函数动态获取常量值;使用defined()函数判断一个常量是否已经定义;使用get_defined_constants()函数获取所有当前已经定义的常量。
define()函数
该函数用来定义常量
语法:define(string constant_name,mixed value,case_sensitive=true)
该函数有3个参数:
constant_name:必选参数,常量名称,即标志符。
value:必选参数,常量的值。
Case_sensitive:可选参数,指定是否大小写敏感,设定为true,表示不敏感。
例子:测试常量
?php
//了解常量
//测试1:常量区分大小写
//define(aaa,22);
//define(AAA,26);
//echo aaa;
//echo br;
//echo AAA;
//从输出结果可以看出常量是区分大小写的
//测试2:在定义时指定是否大小写敏感
//define(aaa,22,true);
//define(AAA,26,true);
//echo aaa;
//echo br;
//echo AAA;
//从输出结果可以看出在将参数Case_sensitive设定为true后,大小写为不敏感!
//测试3:常量的命名
//define(3ads,89);
//echo 3ads;//输出:syntax error说明常量不能是数字开头
//define(_ads,89);
//echo _ads;//输出:syntax error说明常量可以是下划线开头
//define(a3_ds,89);
//echo a3_ds;//输出:syntax error说明常量可以是字母开头
/**
* 测试4:测试使用范围-常量一旦被声明将可以在全局可见,也就是说,它们可以在函数内外使用,
* 但是这仅仅限于一个页面之中(包含我们通过include和include_once)包含进来的PHP脚本,但是在其他的页面之中就不能使用了。
* 下面的测试都输出82,说明常量是全局可见的!
*/
//define(CONSTANT,82);
//echo CONSTANT;//函数外使用
//cl();//调用函数
//function cl()
//{
//echo CONSTANT;//函数内使用
//}
//header(location:cl.php);//自动跳转到cl.php页面
//cl.php页面代码
/**
* 测试常量在另一页面是否可用
include_once(index.php);//测试该步时,请将index.php页面的header注销,不然就成死循环了!!!
echo CONSTANT;
发现输出的是字符串CONSTANT,如果使用了一个未定义的常量(此处的CONSTANT相当于未定义),PHP 假定你想要的是该常量本身的名字,如同你用字符串调用它一样(CONSTANT 对应 CONSTANT)。
*/
//测试5:已定义常量的名称不能与再次定义的常量和变量的名称相同
//$NAME=www;
//define(NAME,uuu);
//define(NAME,zzz);
//echo NAME;
//输出结果表明:如果已定义常量的名称与再次定义的常量和变量的名称相同,那么以第一个定义的常量为准!
//测试6:常量不能在程序执行过程中改变值
//define(CONSTANT,82);
//CONSTANT=2;//提示语法错误
//CONSTANT+=2;//提示语法错误
//define(CONSTANT,33);//没有问题
//echo CONSTANT;//输出仍为82,虽然脚本运行中利用define再次定义CONSTANT不会有语法错误,但是在脚本运行过程中常量是不会改变的!!
文档评论(0)