4

这是关于教义的一个非常基本的问题。单引号是如何转义的?

例如,标题需要转义,因为它包含单引号:

    $query = $this->entityManager->
            createQuery("SELECT p  from \RTH\Entity\Prod p
                         JOIN p.prodns ps
                         JOIN ps.events e
                         WHERE p.title = '" . $title . "'");

Doctrine 2 中是否有特定的方法可以做到这一点?

4

2 回答 2

7

尝试使用准备好的语句 http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/data-retrieval-and-manipulation.html#using-prepared-statements

于 2012-11-14T10:53:42.693 回答
0

准备好的语句确实是要走的路,但如果你不能升级你的代码,你可以使用quoteDoctrine\DBAL\Connection 对象的方法。

根据您的代码,我认为您可以访问连接对象: $this->getConnection()

见:https ://www.doctrine-project.org/projects/doctrine-dbal/en/2.12/reference/data-retrieval-and-manipulation.html#quote

于 2021-04-21T07:25:55.090 回答