В приложениях 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
15313
765
Symfony 6.2 - новые возможности
14409
753
Новое в Symfony 6.2: Компонент Clock
14610
730
Новое в Symfony 6.1: Более простое расширение и настройка бандлов
15613
780
Новое в Symfony 6.1: динамический переключатель локали (Locale Switcher)
12751
637
Новое в Symfony 6.1: компонент HtmlSanitizer
13108
655
Для Symfony 6.1 потребуется PHP версии 8.1 из-за предзагрузки классов
8600
430
Внедрение поддержки Docker в Symfony
14322
716
Приложение на Symfony и Twitter Bootsrap 4 [видео]
10500
525