(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
pg_insert — 将数组插入到表中
$connection,$table_name,$values,$flags = PGSQL_DML_EXEC
   pg_insert() 将 values 中的值插入到由
   table_name 指定的表中。
  
   如果指定 flags,则 pg_convert()
   使用指定 flag 应用于 values。
  
   默认情况下 pg_insert() 传递原始值。值必须转义或必须在 flags
   中指定 PGSQL_DML_ESCAPE flag。PGSQL_DML_ESCAPE
   引用并转义参数/标识符。因此,表/列名称变得区分大小写。
  
注意转义和预处理查询都不能保护 LIKE 查询、JSON、Array、Regex 等,这些参数要根据上下文来处理。即转义/验证值。
connectionPgSql\Connection 实例。
table_name
       要插入记录的表名。表 table_name 中的列必须至少要有 values
       中的单元那么多。
      
values
       array,其键是表 table_name 中的字段名称,其值是要插入的匹配行。
      
flags
       任意数量的 PGSQL_CONV_OPTS、PGSQL_DML_NO_CONV、PGSQL_DML_ESCAPE、PGSQL_DML_EXEC、PGSQL_DML_ASYNC
       或 PGSQL_DML_STRING 的组合。当 PGSQL_DML_STRING 是 flags
       的一部分,然后将返回查询字符串。当设置了 PGSQL_DML_NO_CONV 或 PGSQL_DML_ESCAPE
       时,不会在内部调用 pg_convert()。
      
   成功时返回 true, 或者在失败时返回 false。如果通过 flags 传递 PGSQL_DML_STRING,成功时返回 string。
  
| 版本 | 说明 | 
|---|---|
| 8.1.0 | 现在返回 PgSql\Result 实例,之前返回 资源(resource) | 
| 8.1.0 | 现在 connection参数接受 PgSql\Connection
  实例,之前接受 资源(resource)。 | 
示例 #1 pg_insert() 示例
<?php 
  $dbconn = pg_connect('dbname=foo');
  // 在某种程度上安全,因为所有值都转义了。
  // 然而 PostgreSQL 支持 JSON/Array。无论是
  // 转义还是预处理都不安全。
  $res = pg_insert($dbconn, 'post_log', $_POST, PGSQL_DML_ESCAPE);
  if ($res) {
      echo "POST data is successfully logged\n";
  } else {
      echo "User must have sent wrong inputs\n";
  }
?>
