LoginSignup
6
2

More than 3 years have passed since last update.

PHP7.3からヒアドキュメントのインデントのズレが解消される件

Last updated at Posted at 2019-10-07

ヒアドキュメントは使う箇所によってはソースの可読性をあげられますが
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がスローされます:

とのことなので、既存コードとの互換性という点ではバージョンアップする際は要注意ですね。

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2