artoodetoo
великий и ужасный
Тему, где этот вопрос был офтопиком, закрыли, поэтому предлагаю обсудить здесь. Вопрос вродебы не имеющий смысла:
Является ли php-скриптом файл с расширением .php, если в нем нет <?php ?> и соответственно нет команд?
Я утверждаю, что да - является. Во первых, пустой скрипт это скрипт. Текст без тегов php это валидный файл для интерпретатора. Во вторых это особенность языка PHP: всё, что вне <?php ?> интерпретируется как вывод. Этот вывод подчиняется тем же правилам, что и вывод echo или любого другого оператора/функции вывода. Например он буферизуется.
Благодаря этой особенности, самый элегантный куайн на PHP это просто любой текст без <?php ?>. Я так решил
Всеядность PHP имеет богатые последствия. При некоторых злокозненных условиях, на вход интерпретатору может быть подан абсолютно "левый" файл и это не вызовет ошибки. Например можно сформировать валидный JPEG в одной из секций которого есть код PHP - и этот код будет выполнен. А всё, что кроме <?php ?> будет просто выдано в выходной поток.
Так что, IMHO, каждый должен помнить: любой файл, который попадает на вход интерпретатора PHP, является скриптом.
Является ли php-скриптом файл с расширением .php, если в нем нет <?php ?> и соответственно нет команд?
Я утверждаю, что да - является. Во первых, пустой скрипт это скрипт. Текст без тегов php это валидный файл для интерпретатора. Во вторых это особенность языка PHP: всё, что вне <?php ?> интерпретируется как вывод. Этот вывод подчиняется тем же правилам, что и вывод echo или любого другого оператора/функции вывода. Например он буферизуется.
Благодаря этой особенности, самый элегантный куайн на PHP это просто любой текст без <?php ?>. Я так решил
Всеядность PHP имеет богатые последствия. При некоторых злокозненных условиях, на вход интерпретатору может быть подан абсолютно "левый" файл и это не вызовет ошибки. Например можно сформировать валидный JPEG в одной из секций которого есть код PHP - и этот код будет выполнен. А всё, что кроме <?php ?> будет просто выдано в выходной поток.
Так что, IMHO, каждый должен помнить: любой файл, который попадает на вход интерпретатора PHP, является скриптом.