Есть объект у которого два свойства - объекты.
Можно ли получить доступ из одного свойства-объекта к другому свойству объекту. Например, в setPage() нужно получить данные из объекта-свойства $site->db;
<?php
class page{
public $path;
public $code;
function setPath($path){
/*Здесь нужно получить доступ к методу getName объекта $site->db */
$this->path=$path;
}
function getPath(){
$ret=$this->path;
return $ret;
}
}
class db{
public $name;
function setName($name){
$this->name=$name;
}
function getName(){
return $this->name;
}
}
class site {
public $server;
public $db;
public $page;
function dbInit(){
$this->db= new db();
$this->db->setName('local');
}
function getPage(){
$this->page=new page();
$this->page->setPath('user/profile');
echo $this->page->getPath();
}
}
$site=new site();
$site->dbInit();
$site->getPage();
Пока единственное решение, передать параметром. Ну соответственно, дописать конструктор и т.п.
$this->page=new page($this->$db);
Но если таких свойств-объектов несколько, то что только так? Передавать все объекты в ручную? Неужели ни как по другому?