Ik wil vanuit mij smarty template een functie aanroepen uit een object, maar omdat mijn systeem nogal dynamisch is, heb ik niet altijd deze functie.
Is het mogelijk om binnen mijn object een opvang te maken voor alle niet bestaande functies?
Want als ze niet bestaan, dan wil ik ze uit een ander object halen.
Voorbeeld (let niet op evt typfouten e.d. in de code, want ik typ het even uit mijn hoofd.
class Object1
{
public function __constructor()
{
//standaard constructor
}
public function __default()
{
}
public function getAllObjects()
{
//code om gevraagde gegevens te returnen
}
}
class Object2
{
public function __constructor()
{
//standaard constructor
}
public function __default()
{
}
public function getAllSubObjects()
{
//code om gevraagde gegevens te returnen
}
}
Wanneer ik nu vanuit mijn template $object1.getAllSubObjects() aanroep, wil ik dit in class Object1 opvangen en dan de functie uit Object2 gebruiken.
Ik probeerde zelf de __default() functie aan te passen:
public function __default()
{
if!(method_exist($function))
{
$object2 = new Object2();
return $object2->$function();
}
}
Dit werkt alleen niet. Iemand een suggestie?
1.223 views