Chỉ cần sử dụng fputcsv nó đảm nhận việc thoát và tạo ra dữ liệu csv chính xác.
<?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);
?>
Đầu ra:
aaa,bbb,ccc,dddd
123,456,789
"""aaa""","""bbb"""
Chỉnh sửa
Bạn luôn có thể sử dụng kết hợp tmpfile để mở một tệp sẽ tự động bị xóa khi kết thúc yêu cầu, hãy ghi vào tệp đó và sau đó sau khi báo cáo được tạo, hãy xuất nội dung của tệp đó với fread . Bạn phải sử dụng fread vì tmpfile trả về một tài nguyên, nếu không bạn có thể sử dụng tempnam + file_get_contents nhưng trong trường hợp đó, bạn phải mở tệp và dọn dẹp sau khi tự đọc.