2012-06-27 31 views
11

Tôi cần xuất một số dữ liệu bằng cách sử dụng PHP và cho mỗi dòng tôi đang thêm một \r\n.PHP echo tương đương với CR LF của notepad

Khi tôi mở tệp dữ liệu đã xuất mà tôi đã tải xuống, tôi thấy rằng \r\n được hiểu là [LF] trong Notepad.

Nhưng ứng dụng mà tôi mở tệp không đọc [LF] làm dòng mới.

Bây giờ nếu tôi thực hiện [CR] [LF] trong notepad, ứng dụng có thể đọc [CR] [LF] dưới dạng dòng mới.

Làm cách nào tôi có thể lặp lại tương đương với [CR] [LF] với php?

Cảm ơn.

Trả lời

1

Sự cố được giải quyết: Chuỗi được chuyển trong tham số POST. Đang xóa \ r.

Chỉ cần thực hiện str_replace ("\ n", "\ r \ n", $ ...);

21

Nó đơn giản như thực hiện:

echo "\r\n"; 

(lưu ý các dấu ngoặc kép)

+0

OP đã làm như vậy. – netcoder

+2

@netcoder - lưu ý nhận xét của tôi về dấu ngoặc kép ... OP không nói gì về điều đó –

+0

Xin lỗi vì đã lâu rồi trả lời, thực sự tôi đã làm "\ r \ n" và trong notepad khi tôi hiển thị các ký tự đặc biệt chỉ có [LF]. Có lẽ vì tệp của tôi sử dụng mã hóa ANSI? – troc

3

làm echo PHP_EOL; cách mà nó sẽ luôn hiển thị sự kết hợp trở lại linefeed/vận chuyển đúng đó là hợp lệ cho hệ thống bạn đang sử dụng, vì không phải tất cả hệ điều hành đều sử dụng cùng một số newline convention. (thông tin thêm PHP global constants)

+1

PHP_EOL hợp lệ cho hệ thống __server__ được bật, không nhất thiết đối với hệ thống mà tệp sau đó được mở trên –

+0

Giống như vậy. Chỉ LF và nếu tôi mở tập tin trong khối lưu ý không có bỏ qua dòng. Như tôi đã nói có thể do mã hóa? Việc in tệp php \ r \ n là trong ANSI. – troc

Các vấn đề liên quan