PHPメール送信スクリプトを設定しています...
さまざまなヘッダーを追加しているときに、電子メールの新しい行の記号に出くわしました(<br>タグでは機能しないため)...
だから私の質問は\r\nと\n\ nの違いは何ですか?
例えば:
echo $var1 . " \r\n" . $var2 . "\n\n";
ご協力いただきありがとうございます!
\r\n
が標準です。
RFC 2822から
メッセージは文字列に分割されます。行は、キャリッジ リターンとライン フィードの 2 文字で区切られた一連の文字です。つまり、キャリッジ リターン (CR) 文字 (ASCII 値 13) の直後にライン フィード (LF) 文字 (ASCII 値 10) が続きます。(通常、キャリッジ リターン/ライン フィードのペアは、このドキュメントでは "CRLF" として記述されます。)
もう1\n\n
つはわずか2行です。
これが電子メールヘッダーである場合、私はそれがあると信じています
echo $var1 . " \r\n" . $var2 . "\r\n\r\n";
これがヘッダー\r\n\r\n
とボディの区切り文字です。HTTPまたはSMTPの可能性があります
\r
キャリッジリターンを\n
意味し、改行を意味します。タイプライターのように考えるのは簡単\r
です。紙ホルダー(おそらくキャリッジと呼ばれますか?)を左から右に押すと、行の先頭に入力できます\n
。行を1つ下げます。従来、WindowsとWindowsベースのプログラムには両方が必要でしたが、ほとんどのプログラムは現在\n
、すべてのオペレーティングシステムの新しい行として認識されています。
実際には、\ r\nは単一の改行のWindows標準です。UNIX標準は単一の\n文字です。
ほとんどの場合(電子メールでは)、\ r文字を無視して、\nを1つの改行にのみ使用できます。これは、\ n\nが二重改行を表すことも意味します。
\r\n
は、Windows では改行であり、\n\n
UNIX のようなシステムでは 2 つの改行になります。
新しい行と、HTML に存在する改行を混同しないでください。これは基本的に、プレーン テキスト ファイルに表示される改行にすぎませんが、ブラウザーには表示されません。
改行を参照
"\r\n"
は主にDOSで使用されますが、UNIXではで表現され"\n"
ます。したがって"\n\n"
、UNIXで解釈すると、2つの改行に相当します。PHPについて言及しているので、PHPの事前定義された定数を使用しても安全PHP_EOL
です。
\ nは改行で、\rはキャリッジリターンです。
http://en.wikipedia.org/wiki/Newline#In_programming_languages
\r
キャリッジリターンは、入力位置を最初に戻します。次に\n
、新しい行に進みます。