《PHP实战:开启PHP Static 关键字之旅模式》要点:
本文介绍了PHP实战:开启PHP Static 关键字之旅模式,希望对您有用。如果有疑问,可以联系我们。
声明类成员或方法为static,就可以不实例化类而直接拜访.不能通过一个对象来拜访其中的静态成员(静态方法除外).PHP学习
为了兼容PHP4,如果没有指定“可见性”,属性和办法默认为public.PHP学习
由于静态办法不需要通过对象即可调用,所以伪变量$this在静态办法中不可用.PHP学习
静态属性不可以由对象通过->操作符来拜访.PHP学习
用::方式调用一个非静态办法会导致一个E_STRICT级别的错误.PHP学习
就像其它所有的PHP静态变量一样,静态属性只能被初始化为一个字符值或一个常量,不能使用表达式. 所以你可以把静态属性初始化为整型或数组,但不能指向另一个变量或函数返回值,也不能指向一个对象.PHP学习
PHP5.3.0之后,我们可以用一个变量来动态调用类.但该变量的值不能为关键字self, parent 或static.PHP学习
Example #1 静态成员代码示例PHP学习
<?php class Foo { public static $my_static = 'foo'; public function staticValue() { return self::$my_static; } } class Bar extends Foo { public function fooStatic() { return parent::$my_static; } } print Foo::$my_static . " "; $foo = new Foo(); print $foo->staticValue() . " "; print $foo->my_static . " "; // Undefined "Property" my_static print $foo::$my_static . " "; $classname = 'Foo'; print $classname::$my_static . " "; // PHP 5.3.0之后可以动态调用 print Bar::$my_static . " "; $bar = new Bar(); print $bar->fooStatic() . " "; ?>
Example #2 静态办法代码示例PHP学习
<?php class Foo { public static function aStaticMethod() { // ... } } Foo::aStaticMethod(); $classname = 'Foo'; $classname::aStaticMethod(); // As of PHP 5.3.0 ?>
关于static 中静态变量和静态办法的总结 PHP学习
静态变量PHP学习
静态变量是只存在于函数作用域的变量,不过,在函数执行完成后,这种变量的值不会丢失,也就是说,在下一次调用这个函数时,变量仍然会记得原来的值.要将某个变量定义为静态的,只需要在变量前加上 static 关键字即可.PHP学习
在类中,static关键字有两种主要用法,一是用来定义静态成员,一是用来定义静态方法.在类的内部,可以使用作用域限定符 (::) 来拜访不同层次作用域的变量.PHP学习
静态办法PHP学习
静态办法和非静态办法之间有一个重要的区别:在调用静态办法时,不再需要拥有类的实例.PHP学习
静态办法和非静态办法使用原则:一是如果某个办法中不包含$this变量,就应该时静态办法;如果不需要类的实例,可能还应该使用静态类,这样可以免去实例化类的工作.另,在静态办法中时不能使用$this变量的,因为静态办法不属于某个特定的实例.PHP学习
《PHP实战:开启PHP Static 关键字之旅模式》是否对您有启发,欢迎查看更多与《PHP实战:开启PHP Static 关键字之旅模式》相关教程,学精学透。维易PHP学院为您提供精彩教程。
转载请注明本页网址:
http://www.vephp.com/jiaocheng/8405.html