状況:
Doctrineエンティティである単純なUser
クラスがあります(コードを短くするためにコメントをスキップしました):
class User {
protected $iUserId;
protected $sName;
}
質問:コントローラから
クラスのオブジェクトのコレクションを取得する方法は?User
補足:
今までは、DB からデータを取得し、クラス オブジェクトを作成して返すgetUsers()
inクラスのようなメソッドを作成していました。User
User
さて、UserCollection
データの取得とUser
オブジェクトの作成を処理するようなクラスを作成するのがより良い解決策ではないのでしょうか? \Doctrine\Common\Collections\Collection
多分私はクラスを何らかの形で利用する必要がありますか?
私が達成したいのは、つまりwhere
句を処理する簡単な方法です。UserCollection
クラスにはQueryBuilder
、次のようにコントローラーから操作できるオブジェクトを含めることができます。
$oUserCollection = new UserCollection();
$oUserCollection->setWhere( 'u.iUserId = 1' );
$aUsers = oUserCollection->getUsers();
...
そのトピックについてあなたの考えを共有してください。
更新: Doctrine は、エンティティのリポジトリの概念を提供します。これは、おそらく私が探しているソリューションだと思います。