PHP Doctrine - toArray()将'id'键的值设置为null

时间:2010-09-19 10:37:51

标签: php doctrine

$this->model = Doctrine::getTable('Model');

$model = $this->model->find(1);
var_dump($model->id);
// returns: string '1' (length=1)

var_dump($model->toArray());
// returns: array
//            'id' => null
//            ...

为什么会这样?

1 个答案:

答案 0 :(得分:2)

好的,刚刚发现,它与我模型中的__construct()有关。 我把它拿出来,我的数组中有一个id。

所以我猜我的下一个问题是,如何使用__construct()并仍然使用toArray()函数?

(哦,是的,当然,我正在调用parent :: __ construct()...)


我找到了自己问题的答案。

  public function __construct()
  {
    parent::__construct(Doctrine::getTable('Model'));
  }

您必须将Doctrine_Table的新实例传递给Doctrine_Record __construct()方法。

即使在我找到答案之后,我也无法在网上找到答案,所以我将其留在这里,万一其他人需要它。