#1-6 printとechoの違い

PHPで画面に文章を出力するときは、次のようなプログラムを作ります。

<?php
print('PHPで出力しています');

しかし、実は次のプログラムでも同じように動作します。

<?php
echo 'PHPで出力しています';

この2つのプログラムはなにが違うのかというと、実際動きとしては違いはありません。PHPには、出力の機能を持つ命令文が2種類あるのです。ただし、print構文はあまり使うメリットがないため、基本的にはechoを使えば良いでしょう。

echoのメリット

echoには、printにはないメリットとして「パラメーターを複数受け取ることができる」というものがあります。

print構文
https://www.php.net/manual/ja/function.print.php

echo構文
https://www.php.net/manual/ja/function.echo.php

リファレンスを見比べると分かるとおり、echoは次のようにカンマで区切って複数の文字列を指定できるのです。

echo '1つ目の文章です', ' / 2つ目の文章です', ' / 3つ目の文章です';

こうすると、各パラメーターが続けて出力されます。現状ではあまり便利さを感じませんが、この後変数などと混ぜて出力したい場合に便利に使うことができます。

echoにかっこは不要

PHPは、ファンクションを使うときにかっこで囲む必要があります。

ファンクション名(パラメーター);

しかし、echoは(printも)ファンクションではないため、かっこが不要です。実際省略する方が一般的です。

echo 出力したい文字列;

echoを省略できるショートオープンタグ

echoはさらに省略して「=」という記号で記述する事ができます。

<?= 'PHPで出力しています'; ?>

「<?=」という記号が、次の記号の代わりになっています。

<?php echo

そのため、後は出力したい文章を指定するだけで良いというわけです。ただし、この記述が少し分かりにくくなってしまうことがあるため、慣れないうちはあまり使わないようにしましょう。

この記事を書いた人

たにぐち まこと

『よくわかるPHPの教科書』や『マンガでマスター プログラミング教室』の著者。 ともすた合同会社で、プログラミング教育やこども向けの講座などを Udemyや YouTubeで展開しています。