Tôi đang cố gắng phân tích cú pháp các tệp CSV do người dùng tải lên thông qua PHP, nhưng nó không hoạt động đúng cách.CSV không có dấu ngoặc kép không hoạt động với fgetcsv
Tôi đã tải lên một số CSV được định dạng đúng và nó hoạt động tốt, tuy nhiên; Tôi có nhiều người dùng đang cố gắng nhập tệp CSV được xuất từ Excel và họ đang gặp sự cố. Tôi đã so sánh các tập tin với tôi và nhận thấy rằng các tập tin Excel tất cả đều thiếu dấu ngoặc kép xung quanh các mục. Bên cạnh đó, chúng giống hệt nhau. Nếu tôi mở nó và lưu nó với Open Office, mà không thực hiện bất kỳ thay đổi nào thì nó hoạt động. Vì vậy, tôi khá chắc chắn nó liên quan đến các dấu ngoặc kép.
Câu hỏi của tôi là; làm cách nào để đọc các CSV được định dạng không đúng?
CẬP NHẬT: Đã tìm thấy nguyên nhân!
Điều này dành riêng cho phiên bản Excel của Mac. Các ngắt dòng được xử lý khác nhau trên máy Mac vì một số lý do tùy ý, vì vậy trước khi sử dụng fgetcsv, bạn nên thực hiện việc này;
ini_set('auto_detect_line_endings',TRUE);
Bạn có thể cho chúng tôi biết mã của bạn và cho chúng tôi biết vấn đề là gì? Chúng tôi sử dụng fgetcsv() không có vấn đề, bất kể định dạng. – jasonbar
Cảm ơn anh chàng này !! cuộc sống tiết kiệm –