PHP的常规常量如何声明?
define 关键词声明常量,常量名大写
1 //普通常量的定义方式 2 define('PI', 3.1415926); 3 class Ma{ 4 public function test(){ 5 echo PI; 6 } 7 } 8 $m = new Ma(); 9 $m->test();
现在问题是这样的,因为我们的常量是全局生效,一个PHP文件中一旦声明常量,常年不变的量,本
文件任何问题均可使用。
但我们现在需要一些内部的常量,将其限定到类的内部,不予类外部的常量冲突,怎么解决?
声明类内部常量
关键词:const
调用方式也采用了静态属性和属性方法类似的写法
使用 类名::常量名
1 //普通常量的定义方式 2 define('PI', 3.1415926); 3 class Ma{ 4 const PI = 3.14159265897; 5 public function test(){ 6 echo Ma::PI;//用类似静态变量的方法调用,类名加:: 7 }}$m = new Ma(); 8 $m->test(); 9 //注意类常量和外部常量虽然名字一样,但调用的方法不一样,尽管重名,但互不影响。 10 echo Ma::PI; 11 echo PI;
instanceof 运算符
instanceof
用于判断前面的这个对象是否是后面这个类的实例
1 <?php 2 class A{ 3 4 } $a = new A; 5 class B{ 6 } $b = new B; 7 8 class C extends A{ 9 } $c = new C; 10 11 if($c instanceof A){ 12 echo '是的'; 13 }else{ 14 echo '不是哦!'; 15