文字列と数式を連結しよう

メンバーシップ(月額 980円)になって、このページの動画を見よう

前の記事で、次のように現在時刻を表示するプログラムを作成しました。

<?php
date_default_timezone_set('Asia/Tokyo');
echo date('G時 i分 s秒');

これで、次のように時刻だけが表示されます。

ではこれを「現在は、15時 26分 00秒です」などと前後にメッセージを追加したい場合はどうしたら良いでしょう?この場合、文字列とファンクションを繋がなければならないため、特別な記号で繋ぐ必要があります。ここで使われるのが「.(ドット)」という記号で、これを「文字列連結」などといいます。

文字列連結しよう

プログラムを次のように変更します。

echo '現在は、' . date('G時 i分 s秒') . 'です';

これで実行すると、次のように前後にメッセージが追加されます。

「現在は」や「です」というのは「文字列」なので、前後にクオーテーションが記号が必要です。しかし、その間にあるdateファンクションにはクオーテーションを記号をつけることができません。

そのため、必要なものと必要でないものの間にドットを挟んで、連結しているというわけです。

echoのパラメーターを利用した指定方法

実は、echoを利用する時だけ使える別のテクニックがあります。echoのリファレンスを確認すると、パラメーターは次のようになっています。

echo 文字列1, 文字列2, 文字列3, ...;

カンマで区切って、いくつでもパラメーターが指定できます。echoはこれを順番に画面に出力していきます。そのため、次のように指定できます。

echo '現在は、', date('G時 i分 s秒'), 'です';

.(ドット)が,(カンマ)に代わっただけですが、これでも同じく動作します。どちらを利用しても良いでしょう。

とはいえ、カンマで区切れるのはechoの場合だけなので、文字列連結を覚えておくとよいでしょう。

ともすたチャンネルに
チャンネル登録する