fputcsv

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

fputcsvФорматирует строку в виде CSV и записывает её в файловый указатель

Описание

fputcsv(
    resource $stream,
    array $fields,
    string $separator = ",",
    string $enclosure = "\"",
    string $escape = "\\",
    string $eol = "\n"
): int|false

fputcsv() форматирует строку (переданную в виде массива fields) в виде CSV и записывает её (заканчивая переводом строки) в указанный файл stream.

Список параметров

stream

Требуется допустимый файловый указатель, который указывает на файл, который успешно открыли функцией fopen() или функцией fsockopen(), и ещё не закрыли функцией fclose().

fields

Массив строк (string).

separator

Дополнительный параметр separator устанавливает разделитель полей (только один однобайтовый символ).

enclosure

Дополнительный параметр enclosure устанавливает ограничитель полей (только один однобайтовый символ).

escape

Необязательный параметр escape задаёт экранирующий символ (не более одного однобайтового символа). Пустая строка ("") отключает проприетарный механизм экранирования.

eol

Необязательный параметр eol задаёт настраиваемую последовательность конца строки.

Замечание:

Если символ enclosure содержится в поле, он будет экранирован путём его удвоения, если ему не предшествует escape.

Возвращаемые значения

Возвращает длину записанной строки или false, если возникла ошибка.

Список изменений

Версия Описание
8.1.0 Добавлен необязательный параметр eol.
7.4.0 Теперь параметр escape может принимать пустую строку для отключения проприетарного механизма экранирования.

Примеры

Пример #1 Пример использования fputcsv()

<?php

$list
= array (
array(
'aaa', 'bbb', 'ccc', 'dddd'),
array(
'123', '456', '789'),
array(
'"aaa"', '"bbb"')
);

$fp = fopen('file.csv', 'w');

foreach (
$list as $fields) {
fputcsv($fp, $fields);
}

fclose($fp);
?>

Вышеуказанный пример запишет в файл file.csv следующее:

aaa,bbb,ccc,dddd
123,456,789
"""aaa""","""bbb"""

Примечания

Замечание: Включение опции auto_detect_line_endings во время выполнения иногда помогает исправить неправильное распознавание языком PHP концов строк при чтении файлов на Macintosh-совместимом компьютере или файлов, которые создали на Макинтоше.

Смотрите также

  • fgetcsv() - Получает строку из указателя файла и разбирает поля CSV-файла