在 PHP 中將陣列轉換為 CSV 檔案

Sheeraz Gul 2023年1月30日
  1. 在 PHP 中使用 fputcsv() 將陣列轉換為 CSV 檔案
  2. 在 PHP 中使用 fputcsv() 將陣列轉換為 CSV 檔案並讀取該 CSV 檔案
在 PHP 中將陣列轉換為 CSV 檔案

本教程將演示在 PHP 中使用 fputcsv() 函式將陣列轉換為 CSV 檔案。

在 PHP 中使用 fputcsv() 將陣列轉換為 CSV 檔案

fputcsv() 首先將一行格式化為逗號分隔值,然後將其寫入 CSV 檔案。它需要幾個引數,其中兩個是必需的,即 CSV 檔案和值陣列。

fputcsv() 會將一維陣列作為一行放入 CSV 檔案中。我們可以對多維陣列使用 foreach 迴圈將所有資料放入 CSV 檔案中。

成功時返回一串值;否則,它返回 False

下面是使用 fputcsv() 的程式碼示例。

<?php
$data = array (
    array('Delftstack1', 'Delftstack2', 'Delftstack3', 'Delftstack4'),
    array('Delftstack1', 'Delftstack2', 'Delftstack3', 'Delftstack4'),
    array('Delftstack1', 'Delftstack2', 'Delftstack3', 'Delftstack4'),
    array('Delftstack1', 'Delftstack2', 'Delftstack3', 'Delftstack4')
);
//Create a CSV file
$file = fopen('Newfile.csv', 'w');
foreach ($data as $line) {
    //put data into csv file
    fputcsv($file, $line);
}
fclose($file);
?>

輸出:

陣列到 CSV 輸出

上面的程式碼首先建立了一個 CSV 檔案,並將資料陣列一個一個寫入。

在 PHP 中使用 fputcsv() 將陣列轉換為 CSV 檔案並讀取該 CSV 檔案

下面的程式碼首先使用 fputcsv() 將給定陣列轉換為 CSV,並使用另外兩個引數 $delimiter$enclosure。它讀取檔案並列印包含所有檔案資料的字串。

請參閱示例以更好地理解具有更多引數的 fputcsv() 函式。

<?php
$data = array(
        array('Employee', 'Salary', 'Attendence', 'Company'),
        array('Mark', '3000', '20','Delftstack'),
        array('Shawn', '4000', '22','Delftstack'),
        array('Mike', '3500', '21','Delftstack')
);
$delimiter = ','; //parameter for fputcsv
$enclosure = '"'; //parameter for fputcsv
//convert array to csv
$file = fopen('file.csv', 'w+');
foreach ($data as $data_line) {
    fputcsv($file, $data_line, $delimiter, $enclosure);
}

$data_read="";
rewind($file);
//read CSV
while (!feof($file)) {
    $data_read .= fread($file, 8192); // will return a string of all data separeted by commas.
}
fclose($file);
echo $data_read;
?>

輸出 1:

Employee,Salary,Attendence,Company
Mark,3000,20,Delftstack
Shawn,4000,22,Delftstack
Mike,3500,21,Delftstack

輸出:

陣列到 CSV 並讀取檔案輸出

作者: Sheeraz Gul
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

相關文章 - PHP Array