数据库存储值“& You”,但下面的查询不返回结果
$buildQuery = $this->createQueryBuilder('r')
->where('r.TitreSearch LIKE :term')
->setParameter('term', "%&You%")
;
另一方面,如果我搜索“你”我有一个结果
为什么学说不理解字符“&” ?
答案 0 :(得分:0)
问题不是&符号,而是查询本身。
如果您希望LIKE
匹配列值中的模式,则必须用百分号(即%term%
)括住搜索词。如果没有百分号,LIKE
的行为与=
运算符相同;它寻找完全匹配。
尝试以下方法:
$term = "&You";
$buildQuery = $this->createQueryBuilder('r')
->where('r.TitreSearch LIKE :term')
->setParameter('term', "%$term%");