title: understanding php handling of static methods (non-static method cannot be called statically)
body: <pre><code>&lt;?php
  
  class T {
          public function x(){
                  return true;
          }    
  }
  var_dump(T::x());
  
  class X {
          public function x(){
                  return true;
          }
  
  }    
  var_dump(X::x());
  </code></pre>
  
  <p>This code results in:</p>
  
  <pre><code>bool(true)
  PHP Fatal error:  Non-static method X::x() cannot be called statically in test.php on line 16
  </code></pre>
  
  <p>Why does T::x() works (when it should fail) and X::x() fails (as it should)?</p>