第二十二课:自定义常量
还记得前面我们讲过的PHP中的常量吗?常量是命名了的常数(可以是任何类型的数据)。常量的使用与变量有较大的区别:首先常量不加美元符($),直接用名字来引用它就行了;其次常量的值不可改变,即不可重定义。例如22-1: <? php echo ' 我使用的PHP版本号: ' . PHP_VERSION ; // PHP_VERSION是PHP内置常量 echo ' 运行PHP的操作系统: ' . PHP_OS ; // PHP_OS是PHP内置常量 ?>
在PHP中我们还可以按需要自定义常量,方法是使用define()函数。常量常用来记录整个程序中不变的数据,而且常常放在程序的开头,这样做有利于日后程序的修改和调试。例如22-2:
<? php define ( " SITE " , " php中文社区 " ); // 定义常量SITE define ( " URL " , " www.phpNet.cn " ); // 定义常量URL echo " 有个学习和讨论PHP的地方叫 " . SITE; echo " 它的网址是 " . URL; /* 结果输出:有个学习和讨论PHP的地方叫php中文社区它的网址是www.phpNet.cn */ ?>你还可以用define()函数做些复杂的事情。例如22-3:
<? php define ( " TIYU " , 1 << 1 ); // 体育=2 define ( " CHANGGE " , 1 << 2 ); // 唱歌=4 define ( " MEISHU " , 1 << 3 ); // 美术=8 define ( " YUEDU " , 1 << 4 ); // 阅读=16 $A = 2 | 8 ; // 客户A的爱好有“体育+美术” $B = 4 | 8 ; // 客户B的爱好有“唱歌+美术” $C = 2 | 4 | 16 ; // 客户C的爱好有“体育+唱歌+阅读” /* 也可以这样定义客户爱好$A = TIYU | MEISHU; //客户A的爱好有“体育+美术”$B = CHANGGE | MEISHU; //客户B的爱好有“唱歌+美术”$C = TIYU | CHANGGE | YUEDU; //客户C的爱好有“体育+唱歌+阅读” */ // 定义一个打印客户爱好的函数 function aihao( $name ){ if ( $name & TIYU ) echo " 体育<br> " ; if ( $name & CHANGGE ) echo " 唱歌<br> " ; if ( $name & MEISHU ) echo " 美术<br> " ; if ( $name & YUEDU ) echo " 阅读<br> " ; } echo ' 客户A的爱好有:<br> ' ;aihao( $A ); echo ' 客户B的爱好有:<br> ' ;aihao( $B ); echo ' 客户C的爱好有:<br> ' ;aihao( $C ); ?>从上面的例子我们可以看出,常量是全局有效的,可以在函数内部引用。