改行コードとPHP : PHP

Pocket

PHPの改行に関する覚書。

入力値の改行コード

HTMLフォームのテキストエリアの改行は入力者の環境(OS)で変わる。送信される値は\n(LF:Line Feed),\r(CR:Carrige Return), \r\n(CRLF)のどれかになる。

改行 メタ文字 OS
LF \n Unix, Mac OS X
CR \r Mac OS 9
CRLF \r\n Windows

改行コードの変換/統一

CRLF,CRをLFへ変換/統一する。

$value = str_replace("\r\n", "\n", $value);
$value = str_replace("\r", "\n", $value);

上記コードはPHPから出力する改行やデータベースへ保存はる改行を\nに統一する。

ブラウザの表示

ブラウザは表示するときにサーバから送信された改行コードをブラウザの動作しているOSの改行コードへ変換する。PHPから出力された改行コードがLF(\n)のときでもWindowsへ表示するときはブラウザがCRLF(\r\n)へ変換して表示する。

上記のようにブラウザは表示のときに改行コードを閲覧環境に合わせて自動で変換するのでHTMLの改行コードはLFでもCRLFでもよい。

コメント

Trackbacks

  1. […] findxfine 改行コードとPHP […]

    ピンバックby» 改行コードについて — 2009-09-06 @ 2:46 PM


コメントの投稿

改行と段落タグは自動で挿入されます。
メールアドレスは表示されません。