文字列の出力に使用するechoとprintの違い
PHP で文字列を出力するには echo と print を使用します。この 2 つは関数ではなく PHP の言語構造の一つです。ここでは PHP で文字列を出力するときに使う echo と print の違いについて解説します。
(2021 年 06 月 30 日公開 / 2022 年 10 月 30 日更新)
echoとは
echo
は一つまたは複数の文字列を出力するのに使用します。
echo(string ...$expressions): void
echo
は引数に指定した文字列を出力します。複数の文字列を続けて出力する場合にはカンマ( ,
)で区切って文字列を指定します。戻り値は返しません。
echo 'こんにちは'; echo '出身地:', '東京都';
echo
は関数ではなく PHP
の言語構造の一つです。その為、関数を呼びだすときのように引数を括弧 ()
で括る必要はありません。ただ推奨はされませんが関数のように括弧で括って記述することもできます。
echo('こんにちは');
※ただし複数の文字列を引数に指定する場合は括弧でくくらないでください。
printとは
print
は一つの文字列を出力するのに使用します。
print(string $expression): int
print
は引数に指定した文字列を出力します。 echo
とは異なり複数の引数を指定できません。また戻り値として常に 1 を返します。
print 'こんにちは';
print
は関数ではなく PHP
の言語構造の一つです。その為、関数を呼びだすときのように引数を括弧 ()
で括る必要はありません。ただ推奨はされませんが関数のように括弧で括って記述することもできます。
print('こんにちは');
単一の文字列を出力するのであれば echo
であっても print
であっても基本的に違いはありません。ただ通常 print
を使用して複数の文字列を出力するときだけ echo
を使うのも紛らわしいので特に理由がなければ echo
で統一しておくといいのではないでしょうか。
では簡単なプログラムで試して見ます。
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>PHPテスト</title> </head> <body> <p> <?php $pref = "東京都"; echo $pref, "港区" ,"<br>"; print "こんにちは" ?> </p> </body> </html>
sample.php
というファイル名で Web サーバのドキュメントルートに保存しました。そのあとでブラウザからアクセスします。
echo
と print
を使ってそれぞれ文字列を出力しました。
-- --
PHP で文字列を出力するときに使う echo と print の違いについて解説しました。
( Written by Tatsuo Ikura )

著者 / TATSUO IKURA
プログラミングや開発環境構築の解説サイトを運営しています。