doctrineのQueryBuilderを使ってデータベースの検索を行おうとしています。
その中でsetParameterを使いパラメータを当て込んでいるのですが、クエリの実行がうまくいきません。
原因を調べるためにクエリ文を出力してみたところ、setParameterで値を入れている部分が「?」になっていて本来入るべき値になっていませんでした。
php
1$query = $app['orm.em'] 2 ->createQueryBuilder() 3 ->select('cm') 4 ->from('Plugin\EiteEC\Sample\CustomerMember', 'cm') 5 ->where('cm.Member = :member_id') 6 ->setParameter('member_id', $member_id) 7 ->getQuery(); 8error_log($query->getSql()); // クエリ文の出力 9$CustomerMember = $query->getSingleResult(); // 当然レコードが無いのでNoResultException
sql
1/* 出力したクエリ文 */ 2SELECT 3p0_.customer_member_id AS customer_member_id0, 4p0_.customer_id AS customer_id1, 5p0_.member_id AS member_id2 6FROM plg_customer_member p0_ WHERE p0_.member_id = ?
どのように修正すればパラメータがセットされるようになるでしょうか?
回答1件
あなたの回答
tips
プレビュー