Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么fetch方法从未使用我的Veld构造函数生成对象,我可以强制它吗?_Php_Oop_Pdo_Drupal 7_Dao - Fatal编程技术网

Php 为什么fetch方法从未使用我的Veld构造函数生成对象,我可以强制它吗?

Php 为什么fetch方法从未使用我的Veld构造函数生成对象,我可以强制它吗?,php,oop,pdo,drupal-7,dao,Php,Oop,Pdo,Drupal 7,Dao,为什么fetch方法从不使用我的Veld构造函数生成对象,我可以强制它吗 此情况下使用的代码: VeldDAO使用的函数 public function findAll() { try {//drupal query $query = db_select('veld', 'v') ->fields('v', array('datatype', 'id', 'label', 'beperkingen')) ->e

为什么fetch方法从不使用我的Veld构造函数生成对象,我可以强制它吗

此情况下使用的代码:

VeldDAO使用的函数

 public function findAll()
{
    try {//drupal query
        $query = db_select('veld', 'v')
            ->fields('v', array('datatype', 'id', 'label', 'beperkingen'))
            ->execute();

    } catch (PDOException $e) {
       drupal_goto('foutmelding', array());
    }
    return $query->fetchAll(PDO::FETCH_CLASS, 'model\Veld');//here
}
等级

    class Veld
{
    private $id;        //Integer
    private $label;     //String
    private $datatype;  //String
    private $beperkingen; //Beperking

    public function __construct($data = null)
    {
        if (is_array($data)) {
            if (isset($data['id']))
                $this->id = $data['id'];
            $this->label = $data['label'];
            $this->datatype = $data['datatype'];
            $beperking_id = $data['beperkingen'];
            $beperkingDAO = new BeperkingDAO();
            $this->beperkingen = $beperkingDAO->findbyID($beperking_id);

        }
    }
}
电话:

阅读第三个示例,另请参见本节的答案阅读第三个示例,另请参见本节的答案
$veldDAO = new DAO\VeldDAO();
$veldList = $veldDAO->findAll();