这是关于教义的一个非常基本的问题。单引号是如何转义的?
例如,标题需要转义,因为它包含一个单引号:
$query = $this->entityManager->
createQuery("SELECT p from RTHEntityProd p
JOIN p.prodns ps
JOIN ps.events e
WHERE p.title = '" . $title . "'");
在教义2中是否有特定的方法来做到这一点?
尝试使用预准备语句http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/data-retrieval-and-manipulation.html#using-prepared-statements
预准备语句确实是要走的路,但如果无法升级代码,则可以使用 Doctrine\DBAL\Connection 对象的quote
方法。
根据您的代码,我认为您可以通过以下方式访问连接对象: $this->getConnection()
请参阅:https://www.doctrine-project.org/projects/doctrine-dbal/en/2.12/reference/data-retrieval-and-manipulation.html#quote