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