PHP Conference Japan 2024

pg_send_query_params

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

pg_send_query_params提交命令和单独的参数到服务器,而不等待结果

描述

pg_send_query_params(PgSql\Connection $connection, string $query, array $params): int|bool

提交命令和单独的参数到服务器,而不等待结果。

这等效于 pg_send_query(),除了查询参数可以与 query 字符串分开指定。函数的参数与 pg_query_params() 的处理方式相同。与 pg_query_params() 一样,它不适用于 7.4 之前的 PostgreSQL 连接,并且它只允许在查询字符串中使用一个命令。

参数

connection

一个 PgSql\Connection 实例。

query

参数化的 SQL 语句。必须只包含单个语句。(不允许用分号分隔的多个语句。)如果使用了任何参数,则将其称为 $1、$2 等。

params

一个参数值数组,用于替换原始准备好的查询字符串中的 $1、$2 等占位符。数组中的元素数量必须与占位符的数量匹配。

返回值

成功时返回 true,失败时返回 false0。使用 pg_get_result() 来确定查询结果。

变更日志

版本 描述
8.1.0 connection 参数现在期望一个 PgSql\Connection 实例;以前,期望的是一个 资源

范例

示例 #1 使用 pg_send_query_params()

<?php
$dbconn
= pg_connect("dbname=publisher") or die("Could not connect");

// 使用参数。请注意,无需引用或转义
// 参数。
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}'");
?>

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top