Пока я развивался с Magento, я узнал, что мне не нужно помещать тег php end (?>), Если я не использую HTML под PHP-кодом. Безопасно ли и почему бы нам просто не положить конец тега? Это полезно?
Официальная позиция :
Примечание. Закрывающий тег блока PHP в конце файла является необязательным, и в некоторых случаях его исключение полезно при использовании include () или require (), поэтому нежелательные пробелы не будут возникать в конце файлов, а вы по-прежнему смогут добавлять заголовки в ответ позже. Это также удобно, если вы используете буферизацию вывода и не хотели бы видеть добавленные нежелательные пробелы в конце частей, сгенерированных включенными файлами.
Это полезно при создании файлов классов / файлов кода, так как очень просто добавить лишнее пространство или новую строку в конце файла, что может испортить вывод буферизации вывода header()
. Поскольку PHP рассматривает EOF как закрытие ?>
В файле, нет никакой опасности полагаться на EOF.
Да, это полезно, потому что вы не можете забыть нечетные символы, такие как \ n после закрытия тега (который может предотвратить отправку файлов cookie и т. Д.). В Zend Framework они также не используют закрывающие теги (в качестве стандартного кода проекта).