(PHP 8 >= 8.4.0)
Pdo\Pgsql::copyFromFile — Copy data from file into table
$tableName,$filename,$separator = "\t",$nullAs = "\\\\N",$fields = null
Copies data from file specified by filename
into table tableName using
separator as fields delimiter and fields list
tableNamefilenameseparatorrows array.
nullAsNULL values.
fields
If filename cannot be opened for reading, the failure
is reported through the connection's error handling
(see PDO::ATTR_ERRMODE); with
PDO::ERRMODE_EXCEPTION a
PDOException is thrown.
Example #1 Pdo\Pgsql::copyFromFile() example
The file holds one record per line, with fields 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)');
file_put_contents('/tmp/fruits.tsv', "1\tapple\t10\n2\tbanana\t20\n");
$db->copyFromFile('fruits', '/tmp/fruits.tsv');
echo $db->query('SELECT count(*) FROM fruits')->fetchColumn(), "\n";
?>The above example will output:
2