PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのnl2br()関数とは?使い方と実行例をわかりやすく解説

nl2br()関数とは?

PHPのnl2br()関数は、文字列内にあるすべての改行コードの直前にHTMLの改行タグを挿入するための関数です。テキストエリアから送信されたデータやデータベースから取得した文字列には「\n」などの改行コードが含まれていますが、そのままブラウザに表示しても改行は反映されません。nl2br()関数を使えば、改行コードを自動的に<br>タグへ変換でき、Webページ上でも正しく改行して表示できるようになります。

この関数が改行として認識する主な改行コードは以下のとおりです。

  • \n(LF:ラインフィード)
  • \r(CR:キャリッジリターン)
  • \r\n(CRLF)
  • \n\r

構文

nl2br(str, xhtml)

パラメータ

  • str − 変換対象となる文字列を指定します。

  • xhtml − XHTML互換の改行タグを使用するかどうかを真偽値(bool)で指定します。

    • true − 「<br />」を挿入します。これがデフォルト値です。

    • false − 「<br>」を挿入します。

戻り値

nl2br()関数は、各改行コードの前に改行タグが挿入された変換後の文字列を返します。元の文字列自体は変更されない点に注意してください。

使用例1:第2引数にfalseを指定した場合

次の例では、第2引数のxhtmlにfalseを指定しているため、「<br>」タグが挿入されます。

<?php
    echo nl2br("This has multiple \nlines\nhere!", false);
?>

出力結果

This has multiple
lines
here!

出力されたHTMLソースを確認すると、元の改行コード(\n)の位置に<br>タグが挿入されていることがわかります。

使用例2:\r\n(CRLF)を含む文字列の場合

Windows環境で一般的な「\r\n」という改行コードにも問題なく対応できます。

<?php
    echo nl2br("This is\r\ndemo text!", false);
?>

出力結果

This is
demo text!

まとめ

nl2br()関数は、文字列中の改行コード(\n、\r、\r\nなど)の前にHTMLの改行タグを挿入する、シンプルながら非常に便利な関数です。第2引数の指定によって「<br />」(XHTML形式・デフォルト)と「<br>」(HTML5形式)を使い分けられる点も覚えておきましょう。掲示板やコメント欄など、ユーザーが入力したテキストをWebページに表示する場面で特に活躍します。

  1. PHPのcrc32()関数とは?使い方とデータ整合性チェックの方法

    crc32()関数は、文字列から32ビット長のCRC(巡回冗長検査)チェックサムを計算するためのPHP組み込み関数です。主にデータの整合性を検証する目的で使用され、送信前後のデータが一致しているかどうかを簡単に確認できます。crc32()関数の概要CRC(Cyclic Redundancy Check:巡回冗長検査)は、データ通信やファイル転送時に発生する誤りを検出するための代表的な手法です。crc32()関数を使えば、任意の文字列に対応するチェックサム値(整数)を取得できます。同じ入力に対しては常に同じ値が生成されるため、データが途中で破損・改変されていないかを検証する際に役立ちます。構文c

  2. PHPのbin2hex()関数とは?文字列を16進数に変換する方法をわかりやすく解説

    PHPのbin2hex()関数は、文字列(ASCII文字)を16進数表現に変換するための組み込み関数です。バイナリデータや文字列を16進数の文字列として扱いたい場合に便利で、データのエンコード処理などによく利用されます。 構文 bin2hex(str) パラメータ str − 16進数に変換したい文字列を指定します。 戻り値 bin2hex()関数は、引数に渡されたASCII文字列を1バイトずつ16進数の値に変換し、その結果を文字列として返します。戻り値は常に英数字(0〜9、a〜f)で構成される文字列になります。 実際の使用例を見てみましょう。 例1:基本的な使い方 <?php