0

Doctrine 2.x を使用して、インスタンス化されたモデルの内部から DB からデータをロードする方法はありますか?

メソッドでの実装load():

$model = new Model();
$model->load($params);

$param= arraywith key => DB 内のデータを検索するために使用される値のペア、例:$param = array('id' => 1)

find()メソッド fromDoctrine\ORM\EntityManagerはインスタンスを渡すことを許可しておらず、他に何も見つかりませんでした。

4

1 に答える 1

0

残念ながら、インスタンス化されたオブジェクトにデータをロードすることはできません。

回避方法は次のとおりです。

public function load($id = 0)
{
    $resultObject = $this->_getEntityManager()->find(get_class($this), $id);

    if ($resultObject) {
        foreach (get_object_vars($resultObject) as $key => $val)
        {
            $this->$key = $val;
        }

        unset($resultObject);
    }

    return $this;
}
于 2012-09-15T12:07:14.853 に答える