phpの勉強をしていたら、エラーが出たのでメモしておく。
内容は、「ヒアドキュメント」に関するものです。ヒアドキュメント自体はすっごい初歩的なもので、長い文字列を扱うときに使うものです。
で、書いてみたのはこんなコード。
たいしたことのないごくごく簡単な内容です。
ところが、これをブラウザで確認すると
Parse error: syntax error, unexpected end of file in C:\xampp\htdocs\test\index08.php on line 24
というエラーが出てしまいます。
なぜだ??たいした内容でないのになぜエラーが出るんだ??
そういえば、テキストエディタに表示されている文字もおかしな色で表示されています。文字列がずっと下まで緑色になっています。
ヒアドキュメントの構文を調べても、特に問題ないように思いました。
ヒアドキュメントを使うときは、空白に注意する
いろいろと調べてみてやっとわかったことは、ヒアドキュメントには空白があってはダメということでした。
プログラミングをするときには、書いたコードの内容がわかりやすいようにインデント(字下げ)を入れることがよくあります。空白はだいたい無視されることが多くて、行の終わりに;(セミコロン)を入れることが大事だったりします。
ところが、phpのヒアドキュメントってこの空白がエラーの原因だったようです。
この空白を取り除いたら、テキストエディタの色も変わりました。
ブラウザで確認したところ、エラーも出ず、正常に表示されるようになりました。
インデント(字下げ)は、コードを書いていると当たり前のように入れていたのですが、phpでヒアドキュメントを書く際は空白を入れてはいけないということがわかりました。