Name der Kindklasse in der Elternklasse verwenden

kerstel

Erfahrenes Mitglied
Hallo,

ich habe folgende Situation:

PHP:
class Parent
{
  function getName()
  {
 
  }
}
class Child extends Parent
{
  funcion __construct()
  {
    echo $this->getName();
  }
}

wie kann ich nun mit der Funktion getName der Elternklasse, den Namen der Kindklasse (in dem Fall "Child") zurückgeben? Klar wenn ich der Funktion getName als Parameter die Funktion get_class() mitgebe, aber automatisch wäre für weitere Vererbungen einfacher :)

Noch ein andere Frage am Rande:
Wenn Kindklasse und Elternklasse einen Konstruktor haben, werden diese seperat ausgeführt, oder überschreibt der Konstruktor der Kindklasse den der Elternklasse? kann ich dann vom Eltern Konstruktor etwas an den Kindkonstruktor übergeben?

Danke und Gruß
Kerstel
 
Wenn du die Elternklasse initialisierst, hat sie keine Ahnung, dass es irgendwo eine Kindsklasse gibt.

Aber dein Beispiel wäre so möglich:

PHP:
<?php
class Vater
{
  public function getName()
  {
	echo __CLASS__;
  }
}

class Kind extends Vater
{
  public function __construct()
  {
    echo parent::getName();
  }
}  

$child = new Kind;
?>

Wobei der Sinn und Zweck sich nicht ganz ergibt, finde ich.

Grundsätzlich wird bei der Vererbung, der Konstruktor der Kindklasse ausgeführt, auf den Konstruktor der Elternklasse ist per parent::__construct() aber Zugriff möglich.
 
sinn ist folgender: für die kindklasse sollen erweiterungen programmiert werden können, diese sollen im verzeichnis liegen, das genau so heisst wie die kindklasse. Also wenn die Kindeklasse ABCDE heisst, liegen die erweiterungen im Verzeichnis ABCDE. Da es mehrere Kindklassen gibt, wollte ich das über eine andere Klasse steuern, also wo liegt die erweiterung usw.

Viele Grüße und Danke
Kerstel
 

Neue Beiträge

Zurück