PHPのechoとprintとの違い

プログラミング

スポンサーリンク

PHPのechoとprintとの違い

PHPにおいて、文字を出力する命令(関数ではないらしい)にprintとechoがあります。
この違いが気になったので調べてみました。

以下まとめ。

  • どちらも文字列を出力する
  • echoは1つ以上の引数を取る
    (関数ではないので複数引数を指定したい場合は括弧を使ってはダメ)
  • printは1つしか引数を取らない
  • printは戻り値がある(常に1)
  • RubyのERBみたいな使い方<%= 変数 %>のように<?= 変数 ?>が出来る。この際はechoが呼ばれる。

幾つか実験

引数に関して幾つか実験

以下前提。
$a = 1;
$b = 2;

  • print $a; => 1
  • print $a, $b; => syntax error(文法エラー)
  • echo $a; =>1
  • echo $a, $b; =>12
  • echo ($a); => 1
  • echo ($a, $b); => syntax error(文法エラー)
  • <?= $a ?> => 1
  • <?= $a, $b ?> => 12

参考