fputcsv()
函數用于將一行數據寫入 CSV 文件
要處理大型 CSV 文件,您可以使用以下方法:
set_time_limit(0)
函數來取消 PHP 腳本的執行時間限制。這將允許腳本運行足夠長的時間來處理大型文件。set_time_limit(0);
fread()
和 fputs()
函數逐行讀取和寫入文件。這樣可以避免一次性加載整個文件到內存中。$inputFile = fopen('large_file.csv', 'r');
$outputFile = fopen('large_file_output.csv', 'w');
if ($inputFile && $outputFile) {
while (!feof($inputFile)) {
$line = fgets($inputFile);
$data = explode(',', $line);
fputcsv($outputFile, $data);
}
fclose($inputFile);
fclose($outputFile);
} else {
echo "Error opening file.";
}
請注意,處理大型文件時,確保您的服務器具有足夠的內存和處理能力。如果可能的話,將任務分布到多個服務器或使用隊列系統來避免資源過載。