[PHP] 文字列の出力 print()とecho()
スポンサーリンク
phpで文字列を出力するにはprint()
かecho()
を使います。
print('hello world'); echo('hello world');
カッコ内に与えた文字列「hello world」が表示されます。
print、echoとも一見関数のようですが、関数ではなくPHPの言語構造です。そのため、カッコを使わなくても文字列を出力することができます。
print 'hello world'; echo 'hello world';
カッコを使わない書き方は以上のようになります。実際にプログラム中で使われるときに、カッコを使う場合の方が少ないのではないでしょうか。
echoは複数の文字列や変数を、カンマ区切りで指定することができます。
$foo = "hello"; $bar = "world"; echo $foo, ' ', $bar;//'hello world';
printでは同じ書き方はできません。printで複数の文字列や変数を出力する場合は連結してから出力します。
$foo = "hello"; $bar = "world"; print $foo. ' '. $bar;//'hello world';
printとechoの違いは2点あります。1つは上にあげたカンマで複数の変数・文字列を出力できるかどうかという点です。もう一つはprint()には戻り値があるがechoにはないという点です。
printは文字列を出力したあとint(1) を返します(trueではありません)。それに対し、echoは何も返しません。そのため、echoの方がprintよりわずかに速いとのことです。
とはいえ、実用上気にするような速度差が出ることはないでしょう。こちらのサイトでprintとechoの速度差について調べられていますが、やはり気にするほどの速度差はないとされています。
スポンサーリンク