我有下面的代碼在我的PHP頁面:爲什麼我會「調用一個非對象的成員函數getFloorplan()」?
$fair = Factory::new_fair_obj();
$fairs = $fair->getAllFairs();
$fairs_ddl = createFairDDL($fairs);
$first_fair_id = $fairs[0]['id'];
$fair = $fair->getFair($first_fair_id); // <-- works till here
$floorplan = $fair->getFloorplan($first_fair_id); // <-- This is where it breaks
這是商務艙延伸DAO:
interface iFair {
public function getAllFairs();
public function getFair($id);
public function getFloorplan($id);
}
class Fair extends FairDAO implements iFair {
protected $db;
function __construct(&$db) {
$this->db = $db;
}
public function getAllFairs(){
return parent::getAllFairs();
}
public function getFair($id){
return parent::getFair($id);
}
public function getFloorplan($id){
return parent::getFloorplan($id);
}
}
調用getFair()
工作正常。但在下一行調用getFloorplan()
不起作用。
怎麼回事?
以下行之後$ fair所持有的新價值是什麼? $ fair = $ fair-> getFair($ first_fair_id); – 2012-07-23 22:37:12
因爲getFair()不會返回您所期望的。 – Hamish 2012-07-23 22:37:16