本記事ではPHPで改行を行う方法について解説します。
コマンドプロンプト上で改行を行う方法、ブラウザ上で改行を行う方法、それぞれまとめました。
また、改行コードを削除する方法に関しても解説しています。
本記事を読むことでPHPの改行に関する疑問を解決することが可能です。
PHPで改行を行う方法
まず、PHPで改行を行う方法について解説します。
次の2つのパターンについて方法をまとめました。
- 改行コードを追加する
- brタグを追加する
1)改行コードを追加する
改行コードを追加し、実行時にコマンドプロンプト上で改行できる方法を解説します。
○コード例
<?php
echo "Hello World!!\n";
?>
○実行結果
改行を行う際は「\n」という記号を用います。
この記号を使うことで改行コードを挿入することができ、コマンドプロンプト上で改行が可能です。
注意点ですが「\n」を使う場合はシングルクォーテーションではなく、ダブルクォーテーションを使うようにしてください。
○コード例
<?php
echo 'Hello World!!\n';
?>
シングルクォーテーションでは「\n」がそのまま表示されてしまいます。
下記のようにダブルクォーテーションで括れば正常に改行されます。
○コード例
<?php
echo 'Hello World!!'."\n";
?>
○実行結果
2)brタグを追加する
続いて、ブラウザ上で改行を行う方法についてみていきましょう。
ブラウザ上で改行を行えるようにするにはbrタグというものを使います。
○コード例
<?php
echo "Hello<br>World!!\n";
?>
○実行結果
下記のようにbrタグを使うことで、改行することができます。
PHP_EOLを使って改行する方法もある
補足ですが、「\n」を使わなくてもPHP_EOLを使って改行することも可能です。
PHP_EOLはPHP側ですでに定義されている定数のことです。
○コード例
<?php
echo "Hello World!!";
echo PHP_EOL;
?>
○実行結果
下記のように使うことで、改行を出力することができます。
「\n」を使った方が速くない?と思われるかもしれませんが、LinuxやMacではなくWindowsだと改行コードは「\r\n」になる場合があり、「\n」では改行できない場合があります。
どのOSでも正常に改行できるようにするために、PHP_EOLが用いられます。
PHPで改行コードを削除する方法
続いて、PHPで改行コードを削除する方法について解説します。
改行コードを削除する場合以下の3ついずれかの関数を使います。
- trimを使う
- str_replaceを使う
- preg_replaceを使う
なお「関数って何?」という方はPHP基礎編8:頻繁に使う処理は関数としてまとめようをお読みいただけると幸いです。
1)trimを使う
まず、trim関数を使って改行を削除するやり方をみていきましょう。
trim関数は文字列の先頭と末尾から余計な文字列を除外するための関数です。
○コード例
<?php
$text = "Hello World!!\n";
echo trim($text);
?>
○実行結果
上記のようにtrim関数を使うことで、改行コードを削除することが可能です。
なお、trim関数は他にも「%」などの記号も削除することができます。
便利な関数なので覚えておくと良いでしょう。
2)str_replaceを使う
続いて、str_replace関数を使う方法を解説します。
str_replace関数は文字列を別の文字列に置換することができる関数です。
str_replace関数を使って「\n」を削除することができます。
○コード例
<?php
$text = "Hello World!!\n";
$text = str_replace("\n", "", $text);
echo trim($text);
?>
○実行結果
上記のコードでは「\n」を空文字に変換することで、改行コードを削除しています。
3)preg_replaceを使う
最後に、preg_replace関数を使う方法についてみていきましょう。
preg_replace関数はstr_replaceと同じく文字列を別の文字列に置換することが可能です。
str_replaceは正規表現を用いて文字列を置換することができます。
正規表現とは文字列を1つのパターンで表現する方法のことです。
正規表現を使うことで特定パターンに合致する文字列を一括で変換することができます。
preg_replace関数を使う例をみていきましょう。
○コード例
<?php
$text = "Hello World!!\n";
$text = preg_replace("/\n/", "", $text);
echo trim($text);
?>
○実行結果
正規表現を用いる場合は、「/」で括る必要があります。
上記のコードでは「\n」に合致するものを空文字に置換しています。
改行コードをbrタグに変換する方法
最後に、改行コード(\n)をbrタグに変換する方法についてみていきましょう。
改行コードを変換する際にはnl2br関数を使います。
○コード例
<?php
$text = "Hello World!!\n";
echo nl2br($text);
?>
○実行結果
上記のコードではnl2br関数によってbrタグに変換しています。
なお、バックスラッシュ(/)の入っていないタグにしたい場合は、次のようにします。
○コード例
<?php
$text = "Hello World!!\n";
echo nl2br($text, FALSE);
?>
○実行結果
nl2br関数の第二引数に「FALSE」を入れることで、バックスラッシュの入っていないタグにすることが可能です。
まとめ
本記事ではPHPの改行について解説しました。
trim関数などを使った改行コードの削除は実際の開発でも多く行われます。
この機会に改行コードを自由に操作できるようになりましょう。