Copia datos de una tabla a un fichero

# Pdo\Pgsql::copyToFile

(PHP 8 >= 8.4.0)

Pdo\Pgsql::copyToFile — Copia datos de una tabla a un fichero

### Descripción

public function Pdo\Pgsql::copyToFile(
string `$tableName`,
string `$filename`,
string `$separator` = "\t",
string `$nullAs` = "\\\\N",
?string `$fields` = `null`
): bool

Copia datos de la tabla al fichero especificado por `filename` utilizando `separator` como delimitador de campos y la lista `fields`.

### Parámetros

`tableName`
  Una cadena de caracteres que contiene el nombre de la tabla.
`filename`
  El nombre del fichero donde exportar los datos.
`separator`
  Un delimitador utilizado para separar los campos en una entrada del array `rows`.
`nullAs`
  Cómo interpretar los valores `NULL`.
`fields`
  La lista de campos a exportar.

### Valores devueltos

Esta función retorna `true` en caso de éxito o `false` si ocurre un error.

### Errores/Excepciones

Si `filename` no puede abrirse para escritura, o no puede escribirse en él, el fallo se notifica a través del manejo de errores de la conexión (ver `PDO::ATTR_ERRMODE`); con `PDO::ERRMODE_EXCEPTION` se lanza una PDOException.

### Ejemplos

Ejemplo #1 Ejemplo de Pdo\Pgsql::copyToFile()

La tabla se escribe en `filename`, un registro por línea, con los campos unidos por `separator`.

    <?php
    $db = new Pdo\Pgsql('pgsql:dbname=test host=localhost', $user, $pass);
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $db->exec('CREATE TABLE fruits (id int, name text, qty int)');
    $db->exec("INSERT INTO fruits VALUES (1, 'apple', 10), (2, 'banana', 20)");

    $db->copyToFile('fruits', '/tmp/fruits.tsv');
    echo file_get_contents('/tmp/fruits.tsv');
    ?>

El ejemplo anterior mostrará:

    1	apple	10
    2	banana	20

### Ver también

- Pdo\Pgsql::copyFromFile() - Copia datos de un fichero a una tabla
- Pdo\Pgsql::copyFromArray() - Copia datos de un array PHP a una tabla
- Pdo\Pgsql::copyToArray() - Copia datos de una tabla a un array PHP

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open