ヒアドキュメントは使う箇所によってはソースの可読性をあげられますが
PHP7.2までは、終了マーカーまでをインデントなしで定義しないとダメでした。
最初PHPでこれを見た時に気持ち悪いなと思ってました。
が、PHP7.3からようやくこの問題が解消されるようです。
<?php
class foo {
public $bar = <<< EOT
barbar
hogehoge
EOT;
}
今まではこう書く必要があったのが、、、
<?php
class foo {
public $bar = <<< EOT
barbar
hogehoge
EOT;
}
と記述できるようになります。
可読性が上がりますね!
1つ注意なのが
タブもサポートされていますが、終了マーカーのインデントと本文のインデント(終了マーカーまで)に関してタブとスペースを混在させることはできません。これらのいずれの場合でも、ParseErrorがスローされます:
とのことなので、既存コードとの互換性という点ではバージョンアップする際は要注意ですね。