Đọc file csv trong php

Hi các bạn,

Hôm nay có dịp đụng lại CSV, cụ thể là import CSV để thêm dữ liệu. Nên sẵn dịp log lại 1 bài luôn ý mà.

CSV [Comma-seperated values] là một dạng file khá phổ biến từ lâu đời nay, cụ thể là nó lưu 1 danh sách, các giá trị của nó được phân cách bởi dấu “,”. Không chỉ vậy CSV cũng có thể được phân cách bằng character “TAB” [\t]. Nhưng dùng dấu phẩy vẫn là thông dụng nhất.

Vẫn còn rất nhiều hệ thống người ta ưu tiên sử dụng file này để import vì:

  • Nhẹ
  • Đơn giản
  • Hỗ trợ rộng rãi từ Excel, Google Spreadsheet, OpenOffice,…. Thậm chí Notepad mở lên xem bình thường
  • Đỡ fải thông qua 1 Library nào đó để đọc xls hay xlsx [giảm dependencies]

Tất nhiên nó ko fải vô đối, vẫn có cái dở của nó. Nhưng thoy kệ đi vào bài chính đã 😀

1/ PHP Native function fgetcsv

Đúng vậy, PHP có sẵn function này cho các bạn sử dụng. Hàm này available từ PHP tới giờ nhé. Khá ok.

Mặc định cái delimiter sẽ là dấu phẩy “,”. Các bạn muốn thay đổi thì bỏ delimiter của bạn vào tham số thứ 3 nhé. Tìm hiểu thêm function này tại: //www.php.net/manual/en/function.fgetcsv.php

Vậy để get csv ra array thì ta làm như sau:

Chủ Đề