? в доктрине запрос значит? - PullRequest
1 голос
/ 21 апреля 2010

Интересно, что означает этот запрос:

$blogPost = Doctrine_Query::create()->from('BlogPost p')->where('p.slug = ?', 'doctrine-released')->execute();

Может кто-нибудь объяснить? для меня?

спасибо

Ответы [ 2 ]

7 голосов
/ 21 апреля 2010

Полагаю, но я бы поспорил, что ? - это просто способ сказать, что здесь есть переменная, и я ее позже заполню, как обычное связывание в других разновидностях SQL. В вашем примере это будет означать, что ? расширяется до 'доктрина-выпущен' во время выполнения. Другими словами, запрос становится where p.slug = 'doctrine-released'

0 голосов
/ 04 декабря 2011

Если в качестве параметра есть переменная, то '?'используется другой мудрый '?'не требуется.

Например:

$ blogPost = Doctrine_Query :: create () -> from ('BlogPost p') -> где ('p.slug =?', $освобожден доктриной) -> execute ();

и в случае строки в качестве параметра

$ blogPost = Doctrine_Query :: create () -> from ('BlogPost p') -> where ('p.slug' = 'doctrine-release') -> execute ();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...