PHP7.3より前、ヒアドキュメントの終端IDは行の最初でなければエラー
#PHP

created: 2025/05/11, modified: 2025/05/16

標準のサムネイル 2024-06

PHPのヒアドキュメントは、変数に複数行の文字列を代入する仕組みです。 PHPのバージョンが進み、記述方法も改善されているようです。 私の場合、テストサーバーはPHP8で、本番サーバーは7.2であったため、本番にアップしたらエラーになり、ちょっと焦りました。

原因

  • 終端IDの前にスペースが入っていた
  • 関数を違う場所へコピペしたとき、エディタのインデント機能でスペースが入ってしまっていた

PHPマニュアル(公式)

ヒアドキュメント
https://www.php.net/manual/ja/language.types.string.php#language.types.string.syntax.heredoc

結びに

今回経験したので、コピペのときのインデント注意。ただ、PHP7.3移行だと終端IDの前にスペースあってもOKなので、、