Copia datos de un array PHP a una tabla

# Pdo\Pgsql::copyFromArray

(PHP 8 >= 8.4.0)

Pdo\Pgsql::copyFromArray — Copia datos de un array PHP a una tabla

### Descripción

public function Pdo\Pgsql::copyFromArray(
string `$tableName`,
array|Traversable `$rows`,
string `$separator` = "\t",
string `$nullAs` = "\\\\N",
?string `$fields` = `null`
): bool

Copia datos del array `rows` a la tabla `tableName` utilizando `separator` como delimitador de campos y la lista `fields`.

### Parámetros

`tableName`
  Una cadena de caracteres que contiene el nombre de la tabla.
`rows`
  Un array indexado (o Traversable) de strings con los campos separados por `separator`.
`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 insertar.

### Valores devueltos

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

### Historial de cambios

Versión | Descripción
--- | ---
8.5.0 | `rows` ahora también acepta un Traversable; anteriormente sólo se aceptaba un array.

### Ejemplos

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

Cada elemento de `rows` es un registro cuyos campos se unen mediante `separator` (un tabulador por omisión).

    <?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)');

    $rows = [
        "1\tapple\t10",
        "2\tbanana\t20",
        "3\tcherry\t30",
    ];
    $db->copyFromArray('fruits', $rows);

    foreach ($db->query('SELECT * FROM fruits ORDER BY id') as $row) {
        echo "{$row['id']} {$row['name']} {$row['qty']}\n";
    }
    ?>

El ejemplo anterior mostrará:

    1 apple 10
    2 banana 20
    3 cherry 30

### Ver también

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

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