(PHP 8 >= 8.4.0)
Pdo\Pgsql::copyFromArray — Copia datos de un array PHP a una tabla
$tableName,$rows,$separator = "\t",$nullAs = "\\\\N",$fields = null
Copia datos del array rows a la tabla
tableName utilizando separator
como delimitador de campos y la lista fields.
tableNameUna 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.
fieldsLa lista de campos a insertar.
| Versión | Descripción |
|---|---|
| 8.5.0 |
rows ahora también acepta un
Traversable; anteriormente sólo se aceptaba un
array.
|
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