Могу ли я использовать переменные связывания с PHP и MySQL? - PullRequest
0 голосов
/ 09 февраля 2012

Я пытался выяснить это, но Google не нашел никаких реальных ответов на мой вопрос.

Я использую PHP (с CodeIgniter) и MySQL, есть ли способ, которым я могуиспользовать переменные связывания с моими операторами SQL?

Ответы [ 2 ]

4 голосов
/ 09 февраля 2012

Ну, с помощью CI вы можете:

$sql = "SELECT * FROM table WHERE name = ? AND email = ?";
$query = $this->db->query($sql, array($name,$email));

return $query->row_array();

Это связывает переменную $ name и $ email с соответствующими позициями внутри строки запроса.Это то, что вы имеете в виду?Также есть Active Record (пользовательский ORM или sortof), что довольно приятно.

Все вышеперечисленное автоматически экранирует значения.Вы также можете выйти вручную с помощью $this->db->escape($string) и, для имен столбцов, с помощью $this->db->protect_identifier($column_name).Но это все в руководстве, прочитайте его.

0 голосов
/ 09 февраля 2012

Вы можете использовать PDOStatement::bindParam(), что может быть значительно быстрее, чем функции CI, в зависимости от варианта использования.

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