(PHP 5 >= 5.1.0, PHP 7, PHP 8)
pg_send_execute — Envia uma solicitação para executar uma instrução preparada com determinados parâmetros, sem esperar pelo(s) resultado(s)
$connection, string $statement_name, array $params): int|boolEnvia uma solicitação para executar uma instrução preparada com determinados parâmetros, sem esperar pelo(s) resultado(s).
Isto é semelhante a pg_send_query_params(), mas o comando a ser executado é especificado nomeando uma instrução previamente preparada, em vez de fornecer uma string de consulta. Os parâmetros da função são tratados de forma idêntica a pg_execute(). Assim como pg_execute(), não funcionará em versões anteriores à 7.4 do PostgreSQL.
connectionstatement_name
O nome da instrução preparada a ser executada. Se
"" for especificado, a instrução sem nome será executada. O nome deve
ter sido preparado previamente usando pg_prepare(),
pg_send_prepare() ou um comando SQL
PREPARE.
paramsUm array de valores de parâmetros para substituir os espaços reservados $1, $2, etc. na string de consulta preparada original. O número de elementos no array deve corresponder ao número de espaços reservados.
Retorna true em caso de sucesso, false ou 0 em caso de falha. Use pg_get_result()
para determinar o resultado da consulta.
| Versão | Descrição |
|---|---|
| 8.1.0 |
O parâmetro connection agora espera uma instância de PgSql\Connection;
anteriormente, um resource era esperado.
|
Exemplo #1 Usando pg_send_execute()
<?php
$dbconn = pg_connect("dbname=publisher") or die("Não foi possível conectar");
// Preparar uma consulta para execução
if (!pg_connection_busy($dbconn)) {
pg_send_prepare($dbconn, "my_query", 'SELECT * FROM shops WHERE name = $1');
$res1 = pg_get_result($dbconn);
}
// Execute a consulta preparada. Observe que não é necessário escapar
// a string "Joe's Widgets" de nenhuma forma
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Joe's Widgets"));
$res2 = pg_get_result($dbconn);
}
// Execute a mesma consulta preparada, desta vez com um parâmetro diferente
if (!pg_connection_busy($dbconn)) {
pg_send_execute($dbconn, "my_query", array("Clothes Clothes Clothes"));
$res3 = pg_get_result($dbconn);
}
?>