PHP  
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
search for in the  
<::Object Constants>
Last updated: Mon, 16 Jul 2012

Static Keyword

Declaring class members or methods as static, makes them callable from outside the object context. A member or method declared with static can not be accessed with a variable that is an instance of the object and cannot be re-defined in an extending class.

The static declaration must be after the visibilty declaration. For compatibility with PHP 4, if no visibility declaration is used, then the member or method will be treated as if it was declared as public static.

Because static methods are callable without an instance of the object created, the pseudo variable $this is not available inside the method declared as static.

例子 19-4. Static member example

<?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 . "\n";

$foo = new Foo();
print
$foo->staticValue() . "\n";
print
$foo->my_static . "\n";      // Undefined my_static

print Bar::$my_static . "\n";
$bar = new Bar();
print
$bar->fooStatic() . "\n";
?>

例子 19-5. Static method example

<?php
class Foo {
  public static function
aStaticMethod() {
  
// ...
 
}
}

Foo::aStaticMethod();
?>



<::Object Constants>
 Last updated: Mon, 16 Jul 2012
 
Copyright © 2001-2005 The PHP Group
All rights reserved.
This unofficial mirror is operated at: http://manual.phpv.net/
Last updated: Thu Jul 7 19:13:47 2005 CST