Новое в Symfony 5.4: Различные улучшения (часть 2)
- Новое в Symfony 5.4: Различные улучшения (часть 1)
- Новое в Symfony 5.4: Различные улучшения (часть 2)
- Новое в Symfony 5.4: Различные улучшения (часть 3)
Настраиваемый Статус Код в Шаблонах Отображаемых из Маршрутов
В приложении Symfony контроллеры отображают шаблоны чаще всего. Однако, вы можете отображать шаблоны из конфигурации маршрутов в случаях, когда создание контроллера не требуется.
В Symfony 5.4 мы улучшили эту возможность, что бы вы могли задать код статуса HTTP ответа содержащегося в отображённом шаблоне (чтобы переопределить заданный по умолчанию статус-код 200
):
# 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
Новый Метод innerText() в Компоненте DomCrawler
Компонент Symfony DomCrawler упрощает навигацию по DOM для документов HTML и XML. В Symfony 5.4 мы улучшили его с помощью нового метода innerText()
. Он похож на text()
, но возвращает только текст, который является прямым потомком текущего узла, исключая любые дочерние узлы:
$text = $crawler->filterXPath('//body/p')->innerText();
// если контент <p>Foo <span>Bar</span></p>
// innerText() вернёт 'Foo', а text() вернёт 'Foo Bar'
Рекурсивная Поддержка .gitignore в Компоненте Finder
Компонент Symfony Finder позволяет применять правила .gitignore для каталога в котором вы выполняете поиск. Таким образом, вам не нужно повторно исключать файлы или каталоги из поиска:
// Если файл .gitignore существует в каталоге, его содержимое будет
// разобрано и добавлено в поиск файлов/каталогов
$finder->ignoreVCSIgnored(true);
В Symfony 5.4 мы улучшили эту возможность для лучшего согласования с поведением Git по умолчанию. При включении этой опции, компонент Finder будет использовать .gitignore
файлы во всех подкаталогах просматриваемых во время поиска. Кроме того, правила для подкаталогов всегда имеют приоритет над правилами родительских каталогов.
Новая Команда для Отладки Переменных Окружения
Конфигурация основанная на переменных окружения становится всё более популярной в приложениях Symfony. Учитывая, что многие разные файлы могут определять и переписывать переменные окружения, в Symfony 5.4 мы добавили новую команду debug:dotenv
, которая поможет вам отладить значения всех ваших переменных окружения и какие .env файлы были проверены: