文字列の出力に使用するechoとprintの違い

PHP で文字列を出力するには echo と print を使用します。この 2 つは関数ではなく PHP の言語構造の一つです。ここでは PHP で文字列を出力するときに使う echo と print の違いについて解説します。

(Last modified: )

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の違い

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

-- --

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

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。