title: Create two same static classes in PHP
body: <p>I am trying to extend static class in PHP. What I am running into is that once I change the variable in one of the extend classes, all others classes are changes as well. This is what I am trying to do:</p>
  
  <pre><code>class Fruit{
      private static $name = Null;
      public static function setName($name){
          self::$name = $name;
          }
      public static function getName(){
          return self::$name;
          }
      } 
  
  class Apple extends Fruit{};
  class Banana extends Fruit{};
  
  Apple::setName("apple");
  Banana::setName("Banana");
  
  echo Apple::getName();
  echo Banana::getName();
  </code></pre>
  
  <p>I have read about late static binding and the keyword static::. But I cannot think of a way how to accomplish this without having to redeclare all Fruit's methods in both Apple and Banana. </p>
  
  <p>I will be happy for any help</p>
  
  <p>Thank You</p>