PHP的静态及类中声明的常量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP的静态及类中声明的常量相关的知识,希望对你有一定的参考价值。

静态的关键字是static,static是一个修饰符,用于修饰类的行为和类的对象,除了可以被对象调用外,还可以直接被类名调用。

** 常量
   // $this只能访问类中的变量和函数
        //在类的内部访问类中的常量只能使用self关键字
如果需要在类的外部来直接访问类中的常量,那么直接使用类名+::,也可以使用该类的实例化的对象来访问类中的常量
**静态变量
* 静态变量是只存在于函数作用域的变量
在类的内部访问类中的静态变量只能使用self关键字
静态变量比较特殊,它是被放置在计算机内存的静态区当中
静态变量只要调用了该类就会被创建;且对于一个类来说,每个静态变量只会在内存中保持一个
举例:php5.3.0开始才能使用下面的访问方式
echo $test::$num;
$test::$num = 200;
echo ‘改变后的静态变量:‘.$test::$num;
**静态方法
* 静态方法和非静态方法之间有一个重要的区别:在调用静态方法时,不再需要拥有类的实例。
非静态的函数可以直接调用静态函数方法
伪变量 $this 在静态方法中不可用
因为调用静态函数方法不需要创建类的实例化对象    如: $this->desc();
静态方法的外部访问:使用类名+范围解析操作符+静态函数方法名
举例:MyObject::desc2();

  $a->desc2(); // 这样的方式来访问静态资源,不推荐

举个例:

技术分享

技术分享























以上是关于PHP的静态及类中声明的常量的主要内容,如果未能解决你的问题,请参考以下文章

php--在类中声明常量的关键字

静态常量整数数组

关于“只有静态常量整型数据成员才可以在类中初始化”

Salesforce基础 - Apex常量

PHP的抽象类接口的区别和选择

Java中的静态变量实例变量和局部变量及其特征