文字列の出力に使用する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の違い

echoprint を使ってそれぞれ文字列を出力しました。

-- --

PHP で文字列を出力するときに使う echo と print の違いについて解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

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