title: Reference to static method in PHP?
body: <p>In PHP, I am able to use a normal function as a variable without problem, but I haven't figured out how to use a static method.  Am I just missing the right syntax, or is this not possible?</p>
  
  <p>(EDIT: the first suggested answer does not seem to work.  I've extended my example to show the errors returned.)</p>
  
  <pre><code>function foo1($a,$b) { return $a/$b; }
  
  class Bar
  {
      static function foo2($a,$b) { return $a/$b; }
  
      public function UseReferences()
      {
          // WORKS FINE:
          $fn = foo1;
          print $fn(1,1);
  
          // WORKS FINE:
          print self::foo2(2,1);
          print Bar::foo2(3,1);
  
          // DOES NOT WORK ... error: Undefined class constant 'foo2'
          //$fn = self::foo2;
          //print $fn(4,1);
  
          // DOES NOT WORK ... error: Call to undefined function self::foo2()
          //$fn = 'self::foo2';
          //print $fn(5,1);
  
          // DOES NOT WORK ... error: Call to undefined function Bar::foo2()        
          //$fn = 'Bar::foo2';
          //print $fn(5,1);
  
       }
  }
  
  $x = new Bar();
  $x-&gt;UseReferences();
  </code></pre>
  
  <p>(I am using PHP v5.2.6 -- does the answer change depending on version too?)</p>