(PHP 8 >= 8.4.0)
Pdo\Pgsql::copyFromArray — Copy data from a PHP array into a table
$tableName,$rows,$separator = "\t",$nullAs = "\\\\N",$fields = null
Copies data from rows array to table
tableName using separator
as fields delimiter and fields list.
tableNameString containing table name.
rows
An indexed array (or Traversable) of
strings with fields separated by
separator.
separator
Delimiter used to separate fields in an entry of the
rows array.
nullAs
How to interpret SQL NULL values.
fieldsList of fields to insert.
| Версія | Опис |
|---|---|
| 8.5.0 |
rows now also accepts a
Traversable; previously only an
array was accepted.
|
Приклад #1 Pdo\Pgsql::copyFromArray() example
Each element of rows is one record whose fields are
joined by separator (a tab by default).
<?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";
}
?>Поданий вище приклад виведе:
1 apple 10 2 banana 20 3 cherry 30