【PHP】PHPで文字列に改行を入れたい

先日PHPで文字列に改行を入れたい瞬間があって、ちょっとつまづいたのでメモを残しておきます...!

結構当たり前な気がしますが、あんまりする機会がないとわからないものですね..!

では早速みていきましょう!

やりたかったこと

PHPでは文字列を扱うことができます。(当たり前ですが...w

通常は以下のような感じで文字列を使いますね。

// シングルクォートで文字列宣言
$stringSingle = 'てくてくテック';

// ダブルクォートで文字列宣言
$stringDoubel = "てくてくテック";

ちなみにダブルクォートで宣言しておくと中に変数が使えるようになったりもします。

筆者はここで改行をしたかったんですね!

実は最初文字をそのままコード中で改行をしても改行されていたんですが、さすがに改行コードあるよな...?

と思い調べてみた...という経緯でした...!

まぁ、いつも通りの改行コード"\n"で使えたんですが、気をつけないといけないのがシングルクォートだとそのまま"\n"という文字が出てしまう点です。

以外とつまづきます...

え?改行されねぇ...!って...

そこだけ気をつければ大丈夫です。

// シングルクォーだだと改行されない
$stringSingle = 'てくてく\nテック';

// ダブルクォートなら改行される
$stringDoubel = "てくてく\nテック";

以下、paizaで動作確認ができるので是非試してみてください。

やっていることはそれぞれ文字列を定義してechoで表示しているだけです。

シングルクォートで改行コードを使うとうまくできていないのがわかるかと思います。

念のため、コードも以下においておきます。(paizaのものと内容は一緒です。)

<?php
// Your code here!

// Enterで改行する
$string = "
一行目
二行目
三行目
";
echo $string;

$string = '
一行目
二行目
三行目
';
echo $string;

// 改行コードを使う
$string = "一行目\n二行目\n三行目\n";
echo $string;

// 悪い例: シングルクォートでやっている例
$string = '一行目\n二行目\n三行目\n';
echo $string;
?>

まとめ

さて、今回は改行について調べました。

変数がシングルクォートでは使えないのは知っていたんですが、改行もダメだというのは初めて知りました。

そのまま改行するのはどちらも問題なくできるんですが、どっちがいいんでしょう・・・。

短いものに関しては直接改行もありなのかな・・・?

(あんまりいい印象はないけど)

とりあえず改行コード使っておけば問題ないのかなぁ...

それでは!

おすすめの記事