Copia dados da tabela para arquivo

# Pdo\Pgsql::copyToFile

(PHP 8 >= 8.4.0)

Pdo\Pgsql::copyToFile — Copia dados da tabela para arquivo

### Descrição

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

Copia dados da tabela para o arquivo especificado por `filename` usando `separator` como delimitador de campos e lista de campos no parâmetro `fields`.

### Parâmetros

`tableName`
  String contendo o nome da tabela.
`filename`
  Nome do arquivo para exportar dados.
`separator`
  Delimitador usado para separar campos em uma entrada do array `rows`.
`nullAs`
  Como interpretar valores SQL `NULL`.
`fields`
  Lista de campos a serem exportados.

### Valor Retornado

Retorna `true` em caso de sucesso ou `false` em caso de falha.

### Erros/Exceções

Se `filename` não puder ser aberto para escrita ou não puder ser gravado, a falha é reportada através da manipulação do erro de conexão (consulte `PDO::ATTR_ERRMODE`); com `PDO::ERRMODE_EXCEPTION` uma PDOException é lançada.

### Exemplos

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

A tabela é gravada em `filename`, um registro por linha com os campos conectados 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');
    ?>

O exemplo acima produzirá:

    1	apple	10
    2	banana	20

### Veja Também

- Pdo\Pgsql::copyFromFile() - Copia dados do arquivo para a tabela
- Pdo\Pgsql::copyFromArray() - Copia dados de um array PHP para uma tabela
- Pdo\Pgsql::copyToArray() - Copia dados da tabela do banco de dados para o array PHP

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