| ||||||||||
Поведение разборщикаРазбор и выполнение кода это теперь две разные шаги, никакого выполнения кода файлов не будет, пока сам файл и все требуемые ресурсы не будут успешно разобраны. Одно из новых требований в связи с этим разделением - требуемые и включаемые файлы теперь должны быть синтаксически завершены. Вы больше не можете выводить различные управляющие части структуры управления за пределы файла. То есть вы не можете начать цикл for или while, оператор if или блок switch в одном файле и закончить цикл, операторы else, endif, case или break в другом файле. По-прежнему разрешается включать дополнительный код в циклы или другие структуры управления, только управляющие ключевые слова и соответствующие фигурные скобки {...} должны находиться в одном модуле компиляции (файле или eval()'ированной строке). Выполнение этого требования не может сильно помешать, так как вывод кода за границы в любом случае является очень плохим стилем. Также теперь невозможно, как иногда можно увидеть в коде PHP 3, возвращение значений из необходимого файла. Возвращение и значений из включаемого/included файла всё ещё возможно. | ||||||||||
|