Joel: Klasse bei statischem Methodenaufruf herausfinden

Hallo

Ich habe folgende zwei PHP-Klassen (eigentlich gäbe es noch mehr):

class DataObject {  
  
	static function byPk($pk) {  
		$class = get_class(); // DataObject  
	}  
	  
}  
  
class Page extends DataObject {  
  
}  
	  
$page = Page::byPk(1);

Jetzt würde ich gerne herausfinden, auf welcher Klasse die statische Methode byPk aufgerufen wurde (hier Page). Ich sehe dazu aber keine Möglichkeit, da get_class() leider DataObject und nicht Page zurück gibt. Kennt jemand eine Lösung für dieses Problem?

MfG Joel

  1. Hello,

    Kennt jemand eine Lösung für dieses Problem?

    http://de3.php.net/manual/en/function.get-called-class.php

    Liebe Grüße aus dem schönen Oberharz

    Tom vom Berg

    --
    Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de
    1. Danke für die schnelle Hilfe. Leider existiert bei mit die Funktion get_called_class() nicht. Aber auf php.net fand ich ein Workaround dazu.
      Vielen Dank

      1. Hi!

        Danke für die schnelle Hilfe. Leider existiert bei mit die Funktion get_called_class() nicht.

        PHP Version < 5.3 dann wohl...

        Aber auf php.net fand ich ein Workaround dazu.

        Na dann ist ja alles gut - ~~~php

        self::$works;

          
        off:PP  
          
          
        
        -- 
        "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)  
        
        
    2. Hi!

      Kennt jemand eine Lösung für dieses Problem?

      http://de3.php.net/manual/en/function.get-called-class.php

      Funktioniert seit der Einführung von Late Static Binding in PHP 5.3.0, yo!

      off:PP

      --
      "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)