Что такое «условие» => «project_id =: projectId»,? что означает «:»? - PullRequest
0 голосов
/ 06 декабря 2018

Я не знаю, что такое «условие» => «project_id =: projectId»,? что означает «:»? Другими словами, почему мы должны поставить «:» передProjectID.код, как показано ниже.

public function actionIndex()
    {
        $dataProvider=new CActiveDataProvider('Issue',array(
            'criteria'=>array(
                'condition'=>'project_id=:projectId',
                'params'=>array(':projectId'=>$this->_project->id),
            ),
        ));

1 Ответ

0 голосов
/ 06 декабря 2018

Как я понимаю ваш фрагмент кода, это связано с экранированием параметров запроса / подготовленных операторов SQL.Это предотвращает внедрение SQL.В вашем примере :projectId в condition - это еще один способ сказать: «Пожалуйста, замените это :projectId на экранированное значение :projectId ($this-_project->id) из params при выполнении этого запроса».

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