В приложениях Symfony контроллеры рендерят шаблоны в большинстве случаев, но также в простых случаях вы можете рендерить шаблоны из роут конфига (config/routes), когда в создании самого контроллера нет необходимости.
В Symfony 5.4 данная возможность расширена и улучшена: теперь также можно указать код HTTP ответа, который содержится в отрендеренном шаблоне (вместо стандартного 200 статуса можно, к примеру, указать 202)
# config/routes.yaml
upload_started:
path: /upload_started.html
controller: Symfony\Bundle\FrameworkBundle\Controller\TemplateController
defaults:
template: 'file_upload/started.html.twig'
statusCode: 202 # HTTP Status = Accepted
Компонент Symfony DomCrawler облегчает навигацию по DOM для HTML и XML документов. В Symfony 5.4 этот компонент был улучшен за счет добавления нового метода innerText(). Он похож на метод text(), но при этом возвращает только текст того элемента, который является прямым потомком текущего узла, не включая при этом дочерние узлы:
$text = $crawler->filterXPath('//body/p')->innerText();
// if content is <p>Foo <span>Bar</span></p>
// innerText() returns 'Foo' and text() returns 'Foo Bar'
Компонент Finder фреймворка Symfony позволяет применять правила .gitignore в директории, где вы осуществляете поиск. Таким образом, отсутствует необходимость исключать некоторые файлы или директории из поиска:
// if .gitignore file exists in the directory, its contents
// are parsed and applied to the file/dir search
$finder->ignoreVCSIgnored(true);
В Symfony 5.4 улучшена данная функция с целью лучше соответствовать дефолтному поведению Git. При включении данной функции, компонент Finder будет использовать .gitignore файлы всех поддерикторий, задействованных в поиске. Также правила поддерикторий перезаписывают правила родительских директорий.
Конфигурация, основанная на переменных окружения, очень популярна в приложениях Symfony. Учитывая тот факт, что множество различных файлов могут определять и переопределять переменные окружения, в Symfony 5.4 была добавлена новая команда debug:dotenv, которая поможет вам увидеть и отладить все переменные окружения, и какие .env файлы были задействованы
Обработка сигналов с помощью Symfony Command
15762
788
Symfony 6.2 - новые возможности
14819
753
Новое в Symfony 6.2: Компонент Clock
14989
749
Новое в Symfony 6.1: Более простое расширение и настройка бандлов
16041
802
Новое в Symfony 6.1: динамический переключатель локали (Locale Switcher)
13124
656
Новое в Symfony 6.1: компонент HtmlSanitizer
13512
675
Для Symfony 6.1 потребуется PHP версии 8.1 из-за предзагрузки классов
8963
448
Внедрение поддержки Docker в Symfony
14799
739
Приложение на Symfony и Twitter Bootsrap 4 [видео]
10847
542