24

Doctrine との多対多の関係によって関連付けられた 2 つのエンティティ User と Product があるとします。

関係が存在する場合は true、そうでない場合は false を返す User エンティティの $user->hasProduct($product) メソッドを処理する最良の方法を知りたいです。

私は現在これをやっています:

public function hasProduct($id)
{
    foreach($this->getProducts() as $product) {
        if($product->getId() == $id) {
            return true;
        }
    }

    return false;
}

しかし、特にループに多くの関係がある場合、それが最善の方法であるかどうかはわかりません。

誰かがもっと良いものを持っているなら、私に知らせてください:)

4

2 に答える 2