推动 ORM PHP LIKE * 语句
Posted
技术标签:
【中文标题】推动 ORM PHP LIKE * 语句【英文标题】:Propel ORM PHP LIKE * Sentence 【发布时间】:2014-12-28 23:36:14 【问题描述】:我需要一些帮助才能执行下一个查询。我搜索了 Propel ORM 文档,但没有找到与执行 WHERE LIKE 查询相关的任何内容,并使用“*”找到多个结果:
->where('Player.Name LIKE ?*', $filter)
->find();
有没有办法使用 Active Query 进行此查询?
【问题讨论】:
【参考方案1】:Propel 是建立在 PDO 之上的,因此即使直接使用 PDO,上述内容仍然无效。所以你不使用?与其他字符,而不是将它们连接到变量中,在您的情况下,$filter
应该包含您的通配符(即 % 不是 *)。
所以你先把它添加到$filter
,
例如
$filter = '%' . $filter . '%';
那么正确的语法应该是:
->where('Player.Name LIKE ?', $filter)
或即时执行:
->where('Player.Name LIKE ?', '%' . $filter . '%')
【讨论】:
以上是关于推动 ORM PHP LIKE * 语句的主要内容,如果未能解决你的问题,请参考以下文章