symfony的查询方法实例总结 浏览:423

本文阐述了symfony的查询方法,分享给您参考,如下:

1的写作。创建查询


美元'select计数(不同的SQL语句(g.goodsid))从appbundle:goodsindex G在g.status =:状态;
数组$params =(
状态:status_normal = > goodsindex,
);
如果(!空($关键字){
'keywords $params {的} =% { $关键词} %;
为SQL和g.keywords像:关键词;
}
如果(!空(美元warehouseidlist)){
'warehouseidlist $params {的} = $ warehouseidlist;
SQL = 和g.warehouseid美元在(warehouseidlist);
}
goodsnum美元=美元-> EntityManager ->创建查询($ SQL)-> setparameters($params)-> getsinglescalarresult();




个人简介:这是一个占位符,防止SQL注入的意义。所以,让所有需要的参数在数组参数。

2的写作。getquery


美元'p. orderby =搜索百宝箱} { 'orderby美元;
$库=美元-> EntityManager
-> getrepository('appbundle:goodsindex);
$query = $repository->createQueryBuilder ('p');
为查询->选择('distinct(p.goodsid));
为查询->在(' p.keywords:关键词)
->设置参数('keywords、% { $搜索百宝箱} } { 'keywords %)
->何(p.status =:状态)
->设置参数('status ',goodsindex::status_normal)
-> OrderBy($美元orderby,搜索百宝箱{是})
->setFirstResult ($pagination{'pageSize'} * ($pagination{'page'} - 1))
-> setmaxresults($分页{ 'pagesize});
如果(!空($搜索百宝箱{ 'warehouseidlist ' })){
查询->在美元($查询-> expr()->在('p.warehouseid,搜索百宝箱{ 'warehouseidlist美元'}));
}
goodsindexlist美元=美元getquery查询-> -> getResult()();




更多关于symfony的相关内容感兴趣的读者可以查看主题:symfony

希望本文有助于基于Symfony2框架PHP程序设计人。
推荐文章1
广告