PHP PDO подготовил операторы

Повышение является очень обширной библиотекой (обычно) универсальных конструкций, которые могут помочь почти в любом приложении. Это может показать то, что много компонентов повышения было включено в C++ 0x спецификации.

Это также портативно, по крайней мере, через основные платформы и должно быть портативно к почти чему-либо с главным образом стандарты совместимый компилятор C++.

единственное предупреждение состоит в том, что может быть много смешанных зависимостей между библиотеками повышения, делая его тяжелее для выбирания просто определенного компонента для распределения (кроме всей библиотеки повышения).

32
задан j0k 3 September 2012 в 21:13
поделиться

1 ответ

В документации pdo :: prepare () есть два отличных примера.

Я включил их сюда и немного упростил

Здесь используются параметры ? . $ dbh в основном является объектом PDO. И то, что вы делаете, помещает значения 150 и 'красный' в первый и второй вопросительный знак соответственно

/* Execute a prepared statement by passing an array of values */
$sth = $dbh->prepare('SELECT name, colour, calories
                      FROM fruit
                      WHERE calories < ? AND colour = ?');

$sth->execute(array(150, 'red'));

$red = $sth->fetchAll();

Этот использует именованные параметры и немного сложнее.

/* Execute a prepared statement by passing an array of values */
$sql = 'SELECT name, colour, calories
        FROM fruit
        WHERE calories < :calories AND colour = :colour';

$sth = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
$sth->execute(array(':calories' => 150, ':colour' => 'red'));

$red = $sth->fetchAll();
33
ответ дан 27 November 2019 в 21:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: