\ R \ n ve \ n arasındaki fark PHP

3 Cevap php

Basit bir soru ...

İnsanların kullanmak için söyle gördük "\ r \ n" çeşitli yerlerde ve diğerleri aynı yerde "\ n" kullanmak için söyle. Ben bir doğru ve bir yanlış eminim. Örnek - () başlıkları mail tasarımı:

1. Öğretici:

//define the headers we want passed. Note that they are separated with \r\n 
$headers = "From: webmaster@example.com\r\nReply-To: webmaster@example.com"; 
//add boundary string and mime type specification 
$headers .= "\r\nContent-Type: multipart/mixed; boundary=\"PHP-mixed-".$random_hash."\""; 

Öğretici # 2 (başlık argüman fark):

mail($to, $subject, $body, 
    "From: " . $from . "\n" . 
    "bcc: " . $bcc . "\n" . 
    "MIME-Version: 1.0\n" . 
    "Content-Type: multipart/alternative;\n" . 
    "     boundary=" . $mime_boundary_header)

Kafam karıştı, ama biri, benim başlıklar çalıştı ve diğer sadece sometimes iş, çünkü açıkça, bir fark biraz yapar.

3 Cevap

\ R \ n Windows sistemleri için çizgi karakter sonu vardır.

\ N UNIX sistemleri için çizgi karakter sonudur.

Bu karakterler görünmez. Benim kendi deneyim \ n yanı Windows için genellikle iyidir.

Bazı platformlar arasında taşınabilmesi için yerine bu karakterleri PHP_EOL sabit kullanmayı tercih.

echo 'hi' . PHP_EOL;
echo "hi\n";

$headers = "From: webmaster@example.com" . PHP_EOL 
           . "Reply-To: webmaster@example.com"; 

RFC 821 (SMTP protokolü) başı olarak, satır sonları hep \r\n (<CR><LF>) posta başlıkları ve içeriği olmalıdır, ama pratikte önemli olmamalı en posta sunucuları satır sonları her üç tür idare olarak doğru (sözde, bazı eski UNIX tabanlı olanlar aslında \r\n boğulmaya değil \n).

Yada cevabı ek olarak, burada açıklayan blog girişi: http://www.codinghorror.com/blog/archives/001319.html