class Load
{
var $_object = null;
function __construct($object)
{
$this->_object = $object; /* ??????? */
/* если написать $GLOBALS['_object'] = $object; и далее в методах писать GLOBALS['_object']->$var = $var; то все как мне нужно, но это криво как то...*/
}
function set_var($var)
{
/* бла-бла-блааа */
$this->_object->$var = " VAR = $var;";
}
}
class Base {
var $load = null;
function __construct()
{
$this->load = new Load($this); /* ????? */
}
}
class News extends Base {
function set()
{
$this->load->set_var('var1');
$this->load->set_var('var2');
$this->load->set_var('var3');
$this->load->set_var('var4');
}
function view()
{
echo $this->var1;
echo "\t";
echo $this->var2;
}
}
$news = new News();
$news->set();
$news->view();
echo $news->var1;
echo "<pre>";
var_dump($news);
echo "</pre>";
object(News)#4 (5) {
["load"]=>
object(Load)#5 (1) {
["_object"]=>
object(News)#4 (5) {
["load"]=>
object(Load)#5 (1) {
["_object"]=>
*RECURSION*
}
["var1"]=>
string(12) " VAR = var1;"
["var2"]=>
string(12) " VAR = var2;"
["var3"]=>
string(12) " VAR = var3;"
["var4"]=>
string(12) " VAR = var4;"
}
}
["var1"]=>
string(12) " VAR = var1;"
["var2"]=>
string(12) " VAR = var2;"
["var3"]=>
string(12) " VAR = var3;"
["var4"]=>
string(12) " VAR = var4;"
class Load
{
function set_var($var)
{
/* бла-бла-блааа */
$this->$var = " VAR = $var;";
}
}
class News extends Load {
function set()
{
$this->set_var('var1');
$this->set_var('var2');
$this->set_var('var3');
$this->set_var('var4');
}
function view()
{
echo $this->var1;
echo "\t";
echo $this->var2;
}
}
$news = new News();
$news->set();
$news->view();
echo $news->var1;
echo "<pre>";
var_dump($news);
echo "</pre>";
