В приложениях 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
15619
780
Symfony 6.2 - новые возможности
14690
753
Новое в Symfony 6.2: Компонент Clock
14865
743
Новое в Symfony 6.1: Более простое расширение и настройка бандлов
15929
796
Новое в Symfony 6.1: динамический переключатель локали (Locale Switcher)
12997
649
Новое в Symfony 6.1: компонент HtmlSanitizer
13388
669
Для Symfony 6.1 потребуется PHP версии 8.1 из-за предзагрузки классов
8849
442
Внедрение поддержки Docker в Symfony
14665
733
Приложение на Symfony и Twitter Bootsrap 4 [видео]
10725
536