Maison  >  Article  >  développement back-end  >  玩转php恒量

玩转php恒量

WBOY
WBOYoriginal
2016-06-13 11:13:00815parcourir

玩转php常量

常量的命名规则

命名: 与变量相同的命名规则

方法:define()函数

格式:define('常量名','具体值');

例子:define('PI',3.14);

 

常量与变量的比较

同:

1:命名规则相同(但一般为大写)

不同:

1:引用常量时不用$,直接用名称.

2:常量只能用define定义,不能用赋值语句

3:常量一旦定义就不能重新定义或取消定义

4:常量的值只能是标量(只能是整型、浮点型、布尔型、字符型、NULL

<?php//定义常量define('pi',3.14);//计算园的面的面积$r=3;echo pi*$r*$r;//结果:28.26//常量定义过后,不能再重新定义define('pi',3.23);//结果:Notice: Constant pi already defined in C:\wamp\www\0124\05.php on line 15//常量不能重新赋值pi=100;echo pi;//结果:Parse error: syntax error, unexpected '=' in C:\wamp\www\0124\05.php on line 21//会有语法上的错误$PI=10;function text(){   echo $PI;//函数有作用域。此$PI变量是函数里面的与外边的$PI不是一个。   echo pi;//常量一次定义,可以再任何地方使用}//结果:Notice: Undefined variable: PI in C:\wamp\www\0124\05.php on line 31text();?>

如何判断一个常量有没有定义?
define 定义常量

defined 判断常量

<?phpif(defined('PI')){   echo 'PI常量已经定义了。<br/>';}else{     echo 'PI常量未定义,我来定义它<br/>';     define('PI',33322);}echo PI;?>
结果:PI常量未定义,我来定义它     33322

动态使用常量方法

<?php//访问:http://localhost/0124/06.php?who=DA$who=$_GET['who'];//动态根据传来的值,显示不同的常量define('DA','刘备');define('ER','关羽');define('SAN','张飞');echo $who,'<br/>';//以$who=DA为例//$who变量的值为DA,解析变量得到DA,打印DA,是没错//但问题是,我们想解析出$who的值,即DA,再把DA当成常量的名,再解析出常量的值来//想用动态常量的话,即想用变量的值当成常量名的话,必须要考constant 函数才可以。echo constant($who);//结果:DA//      刘备?>


 


 

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn