This method is available in PHP 5.4 and it is just a wrapper over php.net/fputcsv.
(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SplFileObject::fputcsv — Escreve um array de campos como uma linha CSV
$fields
,$separator
= ",",$enclosure
= "\"",$escape
= "\\",$eol
= "\n"
Escreve o array de fields
no arquivo como uma linha CSV.
fields
Um array de valores.
separator
O parâmetro opcional separator
define o delimitador de campo
(apenas um caractere de byte único).
enclosure
O parâmetro opcional enclosure
define o envólucro de campo
(apenas um caractere de byte único).
escape
O parâmetro opcional escape
define o
caractere de escape (no máximo um caractere de byte único).
Uma string vazia (""
) desativa o mecanismo de escape proprietário.
eol
O parâmetro opcional eol
define uma
sequência de fim de linha personalizada.
Nota:
Se um caractere de
enclosure
estiver contido em um campo, ele será escapado duplicando-o, a menos que seja imediatamente precedido por umescape
.
Retorna o comprimento da string escrita ou false
em caso de falha.
Retorna false
, e não escreve a linha CSV no arquivo, se o
parâmetro separator
ou enclosure
não for um único caractere.
Um erro de nível E_WARNING
é emitido se o
parâmetro separator
ou enclosure
não for um único caractere.
Versão | Descrição |
---|---|
8.1.0 |
O parâmetro opcional eol foi adicionado.
|
7.4.0 |
O parâmetro escape agora também aceita uma string vazia
para desativar o mecanismo de escape proprietário.
|
Exemplo #1 Exemplo de SplFileObject::fputcsv()
<?php
$list = array (
array('aaa', 'bbb', 'ccc', 'dddd'),
array('123', '456', '789'),
array('"aaa"', '"bbb"')
);
$file = new SplFileObject('file.csv', 'w');
foreach ($list as $fields) {
$file->fputcsv($fields);
}
?>
O exemplo acima escreverá o seguinte em file.csv
:
aaa,bbb,ccc,dddd 123,456,789 """aaa""","""bbb"""
This method is available in PHP 5.4 and it is just a wrapper over php.net/fputcsv.