Discuz教程网

PHP 面向对象 PHP5 中的常量

[复制链接]
authicon dly 发表于 2011-9-5 16:49:30 | 显示全部楼层 |阅读模式
在PHP5中 const定义的常量与定义变量的方法不同,不需要加 $ 修饰符。const PI = 3.14; 这样就可以。
而使用const 定义的常量名称一般都大写,这是一个约定,在任何语言中都是这样。
如果定义的常量由多个单词组成,使用 _ 连接,这也是约定。
比如, MAX_MUMBER 这样的命名方式。一个良好的命名方式,是程序员必须注意的。
类中的常量使用起来类似静态变量,不同点只是它的值不能被改变。我们使用 类名::常量名 来调用这个常量。

代码如下:

  1. <?
  2. //声明一个final类Math
  3. class Math{
  4. const PI = 3.14;
  5. public function __toString(){
  6. return "这是Math类。";
  7. }
  8. //这里写了一个算圆面积的方法.使用了Const常量,
  9. //注意使用的方法,类似与静态变量.
  10. public final function areaOfCircular($r){
  11. return $r * $r * self::PI ;
  12. }
  13. public final function max($a,$b){
  14. return $a > $b ? $a : $b ;
  15. }
  16. }
  17. echo Math::PI ;
  18. ?>
复制代码


程序运行结果:
代码如下:
3.14

尝试为const定义的常量赋值,将会出现错误。
代码如下:

  1. <?
  2. //声明一个final类Math
  3. class Math{
  4. const PI = 3.14;
  5. public function __toString(){
  6. return "这是Math类。";
  7. }
  8. //这里写了一个算圆面积的方法.使用了Const常量,
  9. //注意使用的方法,类似与静态变量.
  10. public final function areaOfCircular($r){
  11. return $r * $r * self::PI ;
  12. }
  13. public final function max($a,$b){
  14. return $a > $b ? $a : $b ;
  15. }
  16. public function setPI($a){
  17. self::PI = 3.1415;
  18. }
  19. }
  20. echo Math::PI ;
  21. ?>
复制代码


程序运行结果:
代码如下:
Parse error: parse error in E:\PHPProjects\test.php on line 17





上一篇:PHP in_array 函数使用说明与in_array需要注意的地方说明
下一篇:PHP 面向对象 final类与final方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2025-5-2 10:49

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表