# pg_put_line

(PHP 4 >= 4.0.3, PHP 5, PHP 7)

pg_put_line — 向 PostgreSQL 后端发送以 NULL 结尾的字符串

### 说明

pg_put_line ([ resource `$connection` ], string `$data` ) : bool

pg_put_line() 向 PostgreSQL 后端服务器发送以 NULL 结尾的字符串。例如可以通过 PostgreSQL 的 COPY 操作来向表中高速插入数据。结尾的 NULL 字符会自动加入。

COPY is a high-speed data loading interface supported by PostgreSQL. Data is passed in without being parsed, and in a single transaction.

An alternative to using raw pg_put_line() commands is to use pg_copy_from(). This is a far simpler interface.

> Note:

> 应用程序必须明确地在 pg_end_copy() 之前最后一行发送两个字符 "\." 来向后端指明发送数据结束。

Warning

Use of the pg_put_line() causes most large object operations, including pg_lo_read() and pg_lo_tell(), to subsequently fail. You can use pg_copy_from() and pg_copy_to() instead.

### 参数

`connection`

  PostgreSQL database connection resource. When `connection` is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

`data`

  A line of text to be sent directly to the PostgreSQL backend. A NULL terminator is added automatically.

### 返回值

成功时返回 `TRUE`， 或者在失败时返回 `FALSE`。

### 范例

Example #1 pg_put_line() 例子

    <?php
      $conn = pg_pconnect("dbname=foo");
      pg_query($conn, "create table bar (a int4, b char(16), d float8)");
      pg_query($conn, "copy bar from stdin");
      pg_put_line($conn, "3\thello world\t4.5\n");
      pg_put_line($conn, "4\tgoodbye world\t7.11\n");
      pg_put_line($conn, "\.\n");
      pg_end_copy($conn);
    ?>

### 参见

- pg_end_copy() - 与 PostgreSQL 后端同步