Industrial Training




PHP OOP - Static Properties


PHP - Static Properties


Static properties can be called directly - without creating an instance of a class.


Static properties are declared with the static keyword:


Syntax
< ?php
class ClassName {
  public static $staticProp = "mcatutorials";
}
?>			  

To access a static property use the class name, double colon (::), and the property name:


Syntax
ClassName::staticProp;

Let's look at an example:


Example
< ?php
class pi {
  public static $value = 3.14159;
}

// Get static property
echo pi::$value;
?>			  

Example Explained

Here, we declare a static property: $value. Then, we echo the value of the static property by using the class name, double colon (::), and the property name (without creating a class first).


PHP - More on Static Properties


A class can have both static and non-static properties. A static property can be accessed from a method in the same class using the self keyword and double colon (::):


Example
< ?php
class pi {
  public static $value=3.14159;
  public function staticValue() {
    return self::$value;
  }
}

$pi = new pi();
echo $pi->staticValue(); 
?>			  

To call a static property from a child class, use the parent keyword inside the child class:


Example
< ?php
class pi {
  public static $value=3.14159;
}

class x extends pi {
  public function xStatic() {
    return parent::$value;
  } 
}

// Get value of static property directly via child class
echo x::$value;

// or get value of static property via xStatic() method
$x = new x();
echo $x->xStatic(); 
?>



Hi I am Pluto.