绕过PDO构造函数获取参数错误

时间:2017-04-13 18:55:34

标签: php pdo

class Event  extends DB_CONNECTION {

    private $EVNT_ID;
    private $Organizer;
    private $name;
    private $venue;
    private $discription;
    private $picture;
    private $Address;
    private $start_datetime;
    private $end_datetime;
    private $category;
    private $topic;
    private $Ticket;
    private $Sponsor;
    private $Special_guest;
    private $active;

    function __construct(Organizer $org )   {   
        $this->Organizer = $org;
        $this->Ticket = Ticket::get_tickets($this);
        $this->Sponsor = new Sponsor($this);
        parent::__construct();

    }
}


public function fetch_events() {

    $sql = "SELECT * ";
    $sql .= "FROM `event` ";
    $sql .= " ORDER BY `EVNT_ID` DESC LIMIT 21 ";

    $this->data_set = self::query( $sql );
    $this->data_set->setFetchMode(PDO::FETCH_CLASS, 'Event' );

    $events = $this->data_set->fetchAll();
    return (isset($events) ) ? $events : false;

}

这是我的事件类构造函数

目前正在开发使用PHP和PDO进行数据库连接的事件管理系统。

我已选择PDO作为其获取模式选项,以初始化SQL查询中的对象。但得到一个构造函数错误。

我不能将我的构造函数与参数一起使用,因为PDO在从该类获取数据时会发出"cannot recreate __construct "错误。

有没有办法绕过这个?或者我应该更改我的类的结构并使用init()函数初始化我的对象而不是使用__constructor?

1 个答案:

答案 0 :(得分:0)

不要扩展数据库连接类。 创建一个实例并将其作为构造函数参数发送