tôi có thể tạo một tập tin CSV để tải bởi khách hàng của chúng tôi sử dụngLàm cách nào để thay đổi kết thúc dòng được fputcsv sử dụng?
$output = fopen('php://output', 'w');
và sử dụng fputcsv()
để ghi dữ liệu vào một tập tin CSV mà sẽ được tải về bởi máy khách.
Tôi đang chạy PHP trên Linux và do đó kết thúc dòng không được giải thích bởi nhiều ứng dụng Windows.
Tôi có thể ghi tệp CSV vào thư mục trên máy chủ, đọc lại và thực hiện str_replace()
từ \n
đến \r\n
, nhưng điều này có vẻ là một cách giải quyết vấn đề. Có cách nào để thực hiện chuyển đổi mà không cần tạo tệp vật lý không?
Trừ khi người dùng mở tập tin trong một trình soạn thảo văn bản Windows yêu cầu CRLF, hoặc một số ứng dụng Windows khá cũ, sau đó nó không thực sự quan trọng ... hầu hết các ứng dụng Windows ngày nay nhận ra một LF đơn giản thay vì –
Xin lỗi cho +1 bạn đã ở 1337, đại diện duyên dáng nhất . Nhưng câu hỏi của bạn quan tâm đến tôi, không có cách nào để thay đổi lối thoát hiểm ... –
@MarkBaker: Vâng, đó là những gì tôi mong đợi. Thật không may, họ đang nhập CSV vào một số MIS mà họ sử dụng, điều này dường như không thông minh hơn Notepad trong vấn đề này. – Kalessin