エンジニアのひよこ_level10

毎日更新してた人。たまに記事書きます。

【PHP】改行文字を<br>に変更して表示させる【721日目】

改行を使いたい

画面に文字を表示させたい。

このとき、DBなど外部から改行の入った文字が取得出来たとする

こんにちは
はじめまして

これをHTMLとして出力するときに、 <p><?php echo $string ?></p>とするとどうなるか。

<p>こんにちは
はじめまして</p>

HTMLの改行は意味がないので

こんにちは はじめまして

一行になりますね。どうするか

nl2br

<p><?php echo nl2br($string) ?></p>

これでよい。改行文字が nl2br関数を通すことによって、 <br>タグに変わります。

ちなみにLaravelのBladeでやる場合

{!! nl2br(e($string)) !!}

こう書くと良いです。