我有一個對象,它回退有關該網站的詳細信息。基本上是名稱地址等。其中一個字段是IDCounty。見下文。然後,我想將其饋送到另一個對象的新實例中,並自動爲我提供縣名。這裏是我有PHP對象如何從另一個對象調用對象
所以我的系統對象
class System{
private $db;
public $Ad1;
public $Ad2;
public $County;
public $IDSystem;
//connect to database
public function __construct($IDSystem ='1') {
$this->db = new Database();
$this->IDSystem = $IDSystem;
}
//get address
public function ContactInfo() {
$Query = sprintf("SELECT BSAd1, BSAd2, IDCounty FROM BusinessSettings WHERE IDBusinessSettings = %s",
GetSQLValueString($this->IDSystem, "int"));
$Query = $this->db->query($Query);
$Result = $this->db->fetch_assoc($Query);
$this->Ad1 = $Result['BSAd1'];
$this->Ad2 = $Result['BSAd2'];
$County = new County($Result['IDCounty']);
$this->County = $County;
}
//end address
}
正如你可以看到這個對象調用另一個縣及縣$設置被$ this->縣。我的詳細信息爲低於
class County {
public $IDCounty;
private $db;
public function __construct($IDCounty) {
$this->db = new Database();
$this->IDCounty = $IDCounty;
$Query = sprintf("SELECT CountyName FROM County WHERE IDCounty = %s", GetSQLValueString($this->IDCounty, "int"));
$Query = $this->db->query($Query);
$County = $this->db->fetch_assoc($Query);
return $County['CountyName'];
}
}
當我打電話給我叫它像這樣
$SiteDetails = new System();
$SiteDetails->ContactInfo();
echo $SiteDetails->Ad1;
echo $SiteDetails->County;
即時得到從錯誤回聲報告一個錯誤的對象$ SiteDetails->縣;其中說 「可捕捉的致命錯誤:類縣的對象無法轉換爲字符串」
谷歌搜索後此錯誤我看到系統類遇到麻煩轉換從郡縣類獲取縣名並將其轉換爲$ this - >縣
不幸的是我不知道如何解決它。我想我可以在實例化時從函數返回值,但似乎我錯了。請幫忙。多謝你們。
'Country'是'Object'而不是'string',請看'__toString()'魔術方法。在'Country'對象中實現它。 –