1.常量声明
1.1define()函数声明法
define()
函数声明的常量的值,可以是任意表达式。
define(string $constant_name, mixed $value, bool $case_insensitive = false): bool
1.2const关键字声明法
const
关键字声明的的常量的值,有一些限制,只可以是 标量类型( int
, float
, bool
, string
)表达式、包含标量类型表达式的数组、null
值。
const 常量名 = 值;
2.常量分类
2.1全局常量
名称 | 修饰符 |
全局常量 | —————— |
2.2成员常量
名称 | 修饰符 |
类常量 | —————— |
2.3局部常量
名称 | 修饰符 |
局部常量 | —————— |
3.final类常量
final
关键字加在类常量前面可以防止父类常量被子类常量覆盖。
class Foo
{
final public const XX = "foo";
}
class Bar extends Foo
{
public const XX = "bar"; // Fatal error
}
4.魔术(Magic)常量
名称 | 描述 |
__LINE__ | 文件中的当前行号。 |
__FILE__ | 文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。 |
__DIR__ | 文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。它等价于 dirname(__FILE__) 。除非是根目录,否则目录中名不包括末尾的斜杠。 |
__FUNCTION__ | 当前函数的名称。匿名函数则为 {closure} 。 |
__CLASS__ | 当前类的名称。类名包括其被声明的作用域(例如 Foo\Bar )。当用在 trait 方法中时,__CLASS__ 是调用 trait 方法的类的名字。 |
__TRAIT__ | Trait 的名字。Trait 名包括其被声明的作用域(例如 Foo\Bar )。 |
__METHOD__ | 类的方法名。 |
__NAMESPACE__ | 当前命名空间的名称。 |
ClassName::class | 完整的类名(含路径)。 |
原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/php/phplang/19726.html