Как работают функции fputcsv, fgetcsv на php?

Пользователь

от william_stoltenberg , в категории: PHP , год назад

Как работают функции fputcsv, fgetcsv на php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от sherwood_littel , год назад

@william_stoltenberg 

Функции fputcsv() и fgetcsv() в PHP предназначены для записи и чтения CSV-файлов соответственно.


Функция fputcsv() используется для записи массива данных в CSV-файл. Эта функция принимает два параметра: первый параметр - это дескриптор файла (открытый в режиме записи), а второй параметр - это массив данных, который нужно записать в файл. Функция автоматически форматирует данные в CSV-формат и записывает их в файл.


Вот пример использования функции fputcsv():

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
$fp = fopen('file.csv', 'w');
$data = array(
    array('name', 'age', 'city'),
    array('John', '25', 'New York'),
    array('Jane', '30', 'Los Angeles'),
    array('Bob', '40', 'Chicago')
);
foreach ($data as $row) {
    fputcsv($fp, $row);
}
fclose($fp);


Этот код создаст файл file.csv и запишет в него следующие данные:

1
2
3
4
name,age,city
John,25,New York
Jane,30,Los Angeles
Bob,40,Chicago


Функция fgetcsv() используется для чтения данных из CSV-файла. Она принимает один параметр - дескриптор файла (открытый в режиме чтения), и возвращает массив данных, прочитанных из файла.


Вот пример использования функции fgetcsv():

1
2
3
4
5
$fp = fopen('file.csv', 'r');
while (($row = fgetcsv($fp)) !== false) {
    print_r($row);
}
fclose($fp);


Этот код откроет файл file.csv и выведет на экран массив данных для каждой строки файла:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Array
(
    [0] => name
    [1] => age
    [2] => city
)
Array
(
    [0] => John
    [1] => 25
    [2] => New York
)
Array
(
    [0] => Jane
    [1] => 30
    [2] => Los Angeles
)
Array
(
    [0] => Bob
    [1] => 40
    [2] => Chicago
)