Ich versuche, Klassenbaum zu tun, wo jede Klasse in der Struktur überprüfen eigenes Verzeichnis für Vorlage und verwenden Sie es, aber wenn ich Funktion in geerbter Klasse aufrufen dann Eltern genannt. Wie kann ich es tun ?PHP: Probleme mit der Vererbung
Mein Code in Beispiel unten Ausgang:
D
C
b/1.phtml
aber ich muss d/1.phtml
<?php
class A {
private $templates_dir = 'a';
}
class B extends A {
private $templates_dir = 'b';
public function templates_dir()
{
return $this->templates_dir;
}
public function check_template($tpl)
{
$dir = $this->templates_dir();
$file = $dir. '/'. $tpl;
echo (get_class($this)). "\r\n";
echo (get_parent_class($this)). "\r\n";
echo $file . "\r\n";
// idea - if (!file_exists($file)) return parent::check_template($file);
// method call each class while template will be found
// how do it?
}
}
class C extends B {
private $templates_dir = 'c';
}
class D extends C {
private $templates_dir = 'd';
}
$obj = new D();
$obj->check_template('1.phtml');
Mit all diesen Unterklassen in einer Welt der Schmerzen Sie eingeben. – Federkun