KategoriePHPProgramowanie

Jak odczytać lub zapisać plik CSV w PHP ?

Pliki CSV są chyba jednymi z najczęściej spotykanych jeśli chodzi o import i eksport danych. Dlatego ich obsługa w PHP jest dużo łatwiejsza dzięki wbudowanym funkcją fgetcsv oraz fputcsv. Więcej jak zawsze najdziecie w dokumentacji, a poniżej proste implementacje wykorzystania funkcji.

Odczyt pliku CSV

$rowNumber = 1;

if (($fp = fopen("nazwa_pliku.csv", "r")) !== FALSE) 
{
    while (($row = fgetcsv($fp, 1000, ",")) !== FALSE) 
    {
        $colNumber = count($row);

        echo "<p>Wiersz $rowNumber zawiera $colNumber kolumn</p>";

        $rowNumber++;

        for ($x=0; $x < $colNumber; $c++) 
        {
            echo 'Kolumna '.$x.': '.$row[$x].'<br />';
        }
    }

    fclose($fp);
}

Zapis do pliku CSV

$rows = array (
    array('12', 'Jan', 'Kowalski', '2020-02-03'),
    array('13', 'Adam', 'Nowak', '2020-03-05'),
    array('14', 'Bogumiła', 'Kwiatkowska', '2020-04-12')
);

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

foreach ($rows as $row)
{
    fputcsv(
        $fp,  // uchwyt to pliku
        $row, // pola
        ','   // separator
    );      
}

fclose($fp);

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *