CSV
Nếu bạn có thể chuyển đổi tệp Excel sang CSV trước, bạn có thể sử dụng mysqlimport
để nhập CSV. Đây có lẽ là phương pháp nhanh nhất để đưa dữ liệu vào MySQL.
Bạn có thể thực hiện việc này từ PHP bằng cách sử dụng LOAD DATA INFILE
. Đây là một câu lệnh SQL mẫu để nhập data.csv
:
LOAD DATA INFILE 'data.csv' INTO TABLE phonenumber_list
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES;
Excel
Nếu bạn không thể sử dụng CSV và cần làm việc với các tệp Excel thô, bạn sẽ cần một thư viện PHP có khả năng đọc các tệp Excel.
Có một số loại có sẵn, nhưng tôi không biết mức độ tin cậy hoặc mức độ duy trì chúng tốt như thế nào:
Bạn cũng có thể muốn xem xét cách tiếp cận thay thế của việc sử dụng API Excel, nhưng bạn sẽ cần cài đặt Excel để thực hiện điều đó. Có một chút thông tin về điều đó ở đây:
http://www.sydphp.org/presentations/010606-excel.html
Nếu bạn sử dụng phương pháp này, bạn sẽ cần viết một số mã đọc và phân tích cú pháp tệp Excel và gửi nó đến MySQL từng hàng một. Điều này có thể diễn ra chậm hơn nhiều so với nhập CSV hàng loạt.