php中静态变量和静态方法。
2014-02-17 23:42
239 查看
在php类的内部当使用static进行修饰了类的属性或者方法,则改属性或者方法被成为类的静态属性或者静态访问,
静态属性和非静态属性的区别
php官方的解释
声明类成员或方法为static,就可以不实例化类而直接访问。不能通过一个对象来访问其中的静态成员(静态方法除外)。
为了兼容PHP4,如果没有指定“可见性”,属性和方法默认为public。
由于静态方法不需要通过对象即可调用,所以伪变量$this在静态方法中不可用。
静态属性不可以由对象通过->操作符来访问。
用::方式调用一个非静态方法会导致一个E_STRICT级别的错误。
就像其它所有的PHP静态变量一样,静态属性只能被初始化为一个字符值或一个常量,不能使用表达式。 所以你可以把静态属性初始化为整型或数组,但不能指向另一个变量或函数返回值,也不能指向一个对象。
静态属性和非静态属性的区别
php官方的解释
声明类成员或方法为static,就可以不实例化类而直接访问。不能通过一个对象来访问其中的静态成员(静态方法除外)。
为了兼容PHP4,如果没有指定“可见性”,属性和方法默认为public。
由于静态方法不需要通过对象即可调用,所以伪变量$this在静态方法中不可用。
静态属性不可以由对象通过->操作符来访问。
用::方式调用一个非静态方法会导致一个E_STRICT级别的错误。
就像其它所有的PHP静态变量一样,静态属性只能被初始化为一个字符值或一个常量,不能使用表达式。 所以你可以把静态属性初始化为整型或数组,但不能指向另一个变量或函数返回值,也不能指向一个对象。
class A{ public static $a;//静态属性 //静态方法 public static function a(){ //可以使用self调用静态变量。 //不能使用伪对象$this->a访问 self::$a } } //不需要实例化直接调用 A::a();
相关文章推荐
- php 内的静态变量及静态方法
- 探讨PHP 静态变量 静态方法 初始化类的问题 哪种写法合格
- PHP 静态变量和静态方法
- 关于php中类的静态变量和静态方法
- PHP学习笔记【15】--全局变量,静态变量,静态方法,php方法重载
- php 静态方法 静态变量和继承
- 陈力:传智播客古代 珍宝币 泡泡龙游戏开发第33讲:PHP 静态变量、静态方法
- PHP学习笔记【15】--全局变量,静态变量,静态方法,php方法重载
- PHP 静态变量和静态方法
- 【php全局变量和静态变量、静态方法的使用方法】
- Php中的静态变量和静态方法
- 韩顺平php视频笔记69 静态变量与静态方法
- php中静态变量和静态方法
- java中的静态变量、静态方法与静态代码块详解与初始化顺序
- 静态html文件执行php语句的方法
- java中的静态变量、静态方法和静态代码块
- PHP将整个网站生成HTML纯静态网页的方法总结
- C#中类的实例是不能 获取到类中的静态方法和静态变量(Static)的,及原因
- php生成静态html分页实现方法
- PHP引用操作以及外部操作函数的局部静态变量的方法