Новое в Symfony 5.1: Улучшения HttpFoundation

Добавлен InputBag

Класс ParameterBag, определенный Symfony, похож на объектно-ориентированный массив, который хранит связанные значения и предоставляет такие методы, как get(), set(), has() и т. д. Symfony определяет специализированные классы ParameterBag для некоторых целей (например, FileBag для загруженных файлов. , ServerBag для заголовков HTTP и т. д.)

Новое в Symfony 5.1: Улучшения формы

Добавлен параметр html5 в ColorType

Добавили новую опцию html5 в поле формы ColorType. Если для этого параметра установлено значение true, тип формы проверяет, соответствует ли его значение цветовому формату HTML5, то есть /^#[0-9a-f]{6}$/i.

Новое в Symfony 5.1: Улучшения валидатора

В дополнение к новым валидаторам AtLeastOneOf, ExpressionLanguageSyntax и Hostname, Symfony 5.1 представил другие улучшения валидатора.

Новое в Symfony 5.1: Улучшения в OptionsResolver

Компонент OptionsResolver помогает настраивать объекты с массивами параметров. В Symfony 5.1 улучшили его с помощью следующих функций.

Новое в Symfony 5.1: Решение о доступе на основе приоритета избирателей

В приложениях Symfony Voters безопасности централизуют логику авторизации, которая решает, может ли данный пользователь получить доступ к запрошенному ресурсу. Это обычные службы Symfony, помеченные тегом security.voter, поэтому они могут определять свои приоритеты с помощью атрибута priority тега.

Новое в Symfony 5.1: Валидатор AtLeastOneOf

В дополнение к валидатору Hostname и валидатору ExpressionLanguage, в Symfony 5.1 добавили еще один валидатор с именем AtLeastOneOf. Вы можете применить его к методам и свойствам, чтобы гарантировать, что их значения удовлетворяют хотя бы одному из заданных ограничений (которое может быть любым из встроенных ограничений Symfony и/или ваших собственных пользовательских ограничений):

Новое в Symfony 5.1: Устарел компонент Inflector

Компонент Symfony Inflector преобразует слова между их формами единственного и множественного числа (пока только на английском языке). Он используется в нескольких частях Symfony для генерации уникальных имен свойств из множественных имен методов и наоборот ($foo <-> setFoos(), $foos <-> addFoo()).

Новое в Symfony 5.1: Устаревание публичного сервиса в приватных сервисах

Одной из ключевых функций, которая заставляет разработчиков любить Symfony, является обработка устаревших функций. Обещание обратной совместимости Symfony («обещание BC») гарантирует, что ваше приложение никогда не сломается при обновлении между второстепенными версиями.

Новое в Symfony 5.1: Защита от подделки запросов на стороне сервера

Уязвимости безопасности, такие как CSRF (подделка межсайтовых запросов), хорошо известны большинству веб-разработчиков, и Symfony обеспечивает автоматическую защиту от них. Связанная, но менее известная уязвимость называется SSRF (подделка запросов на стороне сервера).

Новое в Symfony 5.1: Валидатор ExpressionLanguage

Компонент ExpressionLanguage предоставляет механизм для компиляции и оценки выражений. Он используется многими компаниями, чтобы позволить не разработчикам писать бизнес-правила (например, оценить следующее выражение, чтобы решить, предлагает ли ваш магазин скидку: 'user ["isActive"] == true and product ["price"]> 20').