PHP 面向对象 PHP5 中的常量


Posted in PHP onMay 05, 2010

在PHP5中 const定义的常量与定义变量的方法不同,不需要加 $ 修饰符。const PI = 3.14; 这样就可以。
而使用const 定义的常量名称一般都大写,这是一个约定,在任何语言中都是这样。
如果定义的常量由多个单词组成,使用 _ 连接,这也是约定。
比如, MAX_MUMBER 这样的命名方式。一个良好的命名方式,是程序员必须注意的。
类中的常量使用起来类似静态变量,不同点只是它的值不能被改变。我们使用 类名::常量名 来调用这个常量。

<?
//声明一个final类Math
class Math{
      const  PI = 3.14;      
      public function __toString(){
          return "这是Math类。";
      }
      //这里写了一个算圆面积的方法.使用了Const常量,
      //注意使用的方法,类似与静态变量.
      public final function areaOfCircular($r){
          return $r * $r * self::PI ;
      }  
      public final function max($a,$b){
          return $a > $b ? $a : $b ;
      }   
}
echo Math::PI ;
?>

程序运行结果:
3.14

尝试为const定义的常量赋值,将会出现错误。
<?
//声明一个final类Math
class Math{
      const  PI = 3.14;      
      public function __toString(){
          return "这是Math类。";
      }
      //这里写了一个算圆面积的方法.使用了Const常量,
      //注意使用的方法,类似与静态变量.
      public final function areaOfCircular($r){
          return $r * $r * self::PI ;
      }  
      public final function max($a,$b){
          return $a > $b ? $a : $b ;
      } 
      public function setPI($a){
          self::PI  = 3.1415;
      }
}
echo Math::PI ;
?>

程序运行结果:
Parse error: parse error in E:\PHPProjects\test.php on line 17
PHP 相关文章推荐
substr()函数中文版
Oct 09 PHP
用PHP编写PDF文档生成器
Oct 09 PHP
PHP date函数参数详解
Nov 27 PHP
PHP的autoload自动加载机制使用说明
Dec 28 PHP
理解和运用PHP中的多态性[译]
Aug 02 PHP
php检测文件编码的方法示例
Apr 25 PHP
C#静态方法与非静态方法实例分析
Sep 22 PHP
php操作xml入门之xml基本介绍及xml标签元素
Jan 23 PHP
利用PHP生成CSV文件简单示例
Dec 21 PHP
浅谈PHP中类和对象的相关函数
Apr 26 PHP
一次因composer错误使用引发的问题与解决
Mar 06 PHP
PHP实现Snowflake生成分布式唯一ID的方法示例
Aug 30 PHP
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
May 04 #PHP
一些被忽视的PHP函数(简单整理)
Apr 30 #PHP
php 将字符串按大写字母分隔成字符串数组
Apr 30 #PHP
mayfish 数据入库验证代码
Apr 30 #PHP
在PHP中操作Excel实例代码
Apr 29 #PHP
PHP 图片上传实现代码 带详细注释
Apr 29 #PHP
PHP 字符串加密函数(在指定时间内加密还原字符串,超时无法还原)
Apr 28 #PHP
You might like
PHP模拟SQL Server的两个日期处理函数
2006/10/09 PHP
[转帖]PHP世纪万年历
2006/12/06 PHP
php学习之数据类型之间的转换代码
2011/05/29 PHP
fgetcvs在linux的问题
2012/01/15 PHP
php define的第二个参数使用方法
2013/11/04 PHP
PHP使用in_array函数检查数组中是否存在某个值
2015/03/25 PHP
PHP面试题之文件目录操作
2015/10/15 PHP
PHP中list方法用法示例
2016/12/01 PHP
jquery向.ashx文件post中文乱码问题的解决方法
2011/03/28 Javascript
jquery根据属性和index来查找属性值并操作
2014/07/25 Javascript
jQuery判断一个元素是否可见的方法
2015/06/05 Javascript
简介AngularJS中使用factory和service的方法
2015/06/17 Javascript
jQuery原理系列-常用Dom操作详解
2016/06/07 Javascript
Javascript中的arguments对象
2016/06/20 Javascript
小程序getLocation需要在app.json中声明permission字段
2019/04/04 Javascript
Node.js HTTP服务器中的文件、图片上传的方法
2019/09/23 Javascript
vue-i18n实现中英文切换的方法
2020/07/06 Javascript
[54:02]2018DOTA2亚洲邀请赛 4.1 小组赛 B组 IG vs VGJ.T
2018/04/03 DOTA
python实现复制整个目录的方法
2015/05/12 Python
python实现在pandas.DataFrame添加一行
2018/04/04 Python
关于django 数据库迁移(migrate)应该知道的一些事
2018/05/27 Python
对Xpath 获取子标签下所有文本的方法详解
2019/01/02 Python
Python2.7版os.path.isdir中文路径返回false的解决方法
2019/06/21 Python
Python 点击指定位置验证码破解的实现代码
2019/09/11 Python
Python bytes string相互转换过程解析
2020/03/05 Python
Django如何实现防止XSS攻击
2020/10/13 Python
Web时代变迁及html5与html4的区别
2016/01/06 HTML / CSS
英国殿堂级有机护肤品牌:Rodial
2017/04/17 全球购物
Java提供了哪些企业应用编程接口
2015/02/13 面试题
用Java语言将一个键盘输入的数字转化成中文输出
2013/01/25 面试题
python re模块和正则表达式
2021/03/24 Python
推荐信怎么写
2014/05/09 职场文书
团队精神口号
2014/06/06 职场文书
2016医师资格考试考生诚信考试承诺书
2016/03/25 职场文书
《岳阳楼记》原文、译文赏析
2019/09/10 职场文书
《自然之道》读后感3篇
2019/12/17 职场文书