在类的外边第一常量:使用关键字define来定义常量。
//在类外面通常这样定义常量
define("PHP","phpddt.com");
在类中,不能使用define,而是使用const来定义常量。
class MyClass
{
//常量的值将始终保持不变。在定义和使用常量的时候不需要使用$符号
const constant = 'constant value';
function showConstant() {
echo self::constant . "<br>";
}
}
echo MyClass::constant . "<br>";
一般是define在类外定义常量,const在类内定义常量,并且const必须通过类名::变量名来进行访问。但是php5.3以上支持类外通过const定义常量,
<?php
//@blog<http://www.xxx.com>
const a = "abcdef";
echo a;
define和const的其它区别:
1.const不能再条件语句中定义常量,但是define是可以的
2.const采用一个普通的常量名称,define可以采用表达式作为名称
3.const只能接受静态的标量,而define可以采用任何表达式。
4.const本身就是一个语言结构。而define是一个函数。所以使用const速度要快的多。