PHP PDO fetchAll进入类和构造函数

时间:2012-12-30 09:43:39

标签: php oop constructor pdo

我正在尝试找到使用类将数据转换为类的最佳方法,但使用相同的类插入表或返回信息,我不确定最好的方法。构造函数似乎在概念上给我带来了麻烦。现在我有一个页面,使用以下命令查询所有记录:

$query->fetchAll(PDO::FETCH_CLASS, "Contact", array($dbh))

当然,它将每条记录放入一个“Contact”类,将每一行放入同名的私有数据成员和添加/更新/删除记录的数据库连接句柄。这完全没问题。但是将原始数据转换成课程会给我带来麻烦。按照上面代码的语法[据我所知]我不能有任何其他构造函数参数,否则它将是一个草率的黑客。这是我的代码:

class Contact {
    private $dbh;
    private $Contact_ID;
    private $Contact_First_Name;
    private $Contact_Last_Name;
    private $Contact_Email;
    private $Contact_Phone_Number;

    public function __construct($dbh) {
        $this->dbh = $dbh;
    }

    // .. 
}

因此,如果我尝试使用表单中的数据创建新的Contact对象,则无法存储数据成员。我尝试了一个hack来使它工作有默认参数并检查默认值不改变(因为它是fetchAll()的一部分)或者如果它没有然后存储新值但是这不起作用。

感谢。

0 个答案:

没有答案