Portál AbcLinuxu, 13. listopadu 2025 19:35
$error = new Error($menu); $menu = new Menu($error); $con = new Con($error);a nevím jak dostat instanci $menu do class Error když ještě neexistuje. Poradí někdo? Děkuji
Řešení dotazu:
$error = new Error($menu); $menu = new Menu($error); $error->setMenu($menu); $con = new Con($error);
$error = new Error();místo
$error = new Error($menu);
Má.
čo tak taketo šialenstvo???
/*
// what if we want to extend more then one class?
Abstract class ExtensionBridge
{
// array containing all the extended classes
private $_exts = array();
public $_this;
function __construct(){$_this = $this;}
public function addExt($object)
{
$this->_exts[]=$object;
}
public function __get($varname)
{
foreach($this->_exts as $ext)
{
if(property_exists($ext,$varname))
return $ext->$varname;
}
}
public function __call($method,$args)
{
foreach($this->_exts as $ext)
{
if(method_exists($ext,$method))
return call_user_method_array($method,$ext,$args);
}
throw new Exception("This Method {$method} doesn't exists");
}
}
// parent::addExt(new Ext1());
// parent::addExt(new Ext2());
*/
class Syn extends Tata {
private $syn = "syn";
public function __construct()
{
// ??? Přepiš proměnnou $tata v class Tata
// ??? Přepiš proměnnou $dcera v class Dcera
}
}
class Dcera extends Tata {
private $dcera = "dcera";
public function __construct()
{
// ??? Přepiš proměnnou $tata v class Tata
// ??? Přepiš proměnnou $syn v class Syn
}
}
class Tata {
private $tata = "tata";
public function __construct()
{
$this->obj1 = new Syn();
$this->obj1 = new Dcera();
// ??? Přepiš proměnnou $syn v class Syn
// ??? Přepiš proměnnou $dcera v class Dcera
}
}
new Tata();
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.