您的位置:首页 > 编程语言 > PHP开发

php static

2015-10-27 14:48 537 查看
http://www.php100.com/cover/php/83.html

声明类成员或方法为static,就可以不实例化类而直接访问。不能通过一个对象来访问其中的静态成员(静态方法除外)。

为了兼容PHP4,如果没有指定“可见性”,属性和方法默认为public。

由于静态方法不需要通过对象即可调用,所以伪变量$this在静态方法中不可用。

静态属性不可以由对象通过->操作符来访问。
<?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 . "1<br>";

$foo = new Foo();
print $foo->staticValue() . "2<br>";
print $foo->my_static . "3<br>";      // Undefined "Property" my_static

print $foo::$my_static . "4<br>";
$classname = 'Foo';
print $classname::$my_static . "5<br>"; // PHP 5.3.0之后可以动态调用

print Bar::$my_static . "6<br>";
$bar = new Bar();
print $bar->fooStatic() . "7<br>";
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: