(PHP 5 >= 5.1.0, PHP 7)
pg_send_query_params — Посылает параметризованный запрос на сервер, не ожидает возвращаемого результата
$connection
, string $query
, array $params
) : boolОтправляет параметризованный запрос на выполнение и не ждет его завершения. Параметры передаются отдельно от текста SQL запроса.
Функция является аналогом pg_send_query() за одним исключением: параметры запроса можно передавать отдельно от строки запроса. Аргументы функции обрабатываются так же, как и в pg_query_params(). pg_send_query() поддерживается на соединениях с серверами PostgreSQL версий 7.4 и выше. Функция не будет работать с серверами ранних версий. Также она поддерживает только одну SQL-команду в выражении.
connection
Ресурс соединения с базой данных PostgreSQL.
query
Параметризованный SQL запрос. Должен содержать только одно выражение (несколько выражений разделенных точкой с запятой не поддерживаются). Если в запрос будут передаваться параметры, то они заменят псевдопеременные $1, $2 и т.д.
params
Массив значений параметров запроса для замены псевдопеременных $1, $2 и т.д. в исходной строке запроса. Количество элементов массива должно точно совпадать с количеством псевдопеременных.
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Пользуйтесь функцией pg_get_result() для получения результата запроса.
Пример #1 Пример использования pg_send_query_params()
<?php
$dbconn = pg_connect("dbname=publisher") or die("Не удалось подключиться");
// Использование параметров. Стоит заметить, что нет необходимости
// заключать в кавычки и экранировать параметр.
pg_send_query_params($dbconn, 'select count(*) from authors where city = $1', array('Perth'));
// В сравнении с pg_send_query
$str = pg_escape_string('Perth');
pg_send_query($dbconn, "select count(*) from authors where city = '${str}'");
?>