Данные Symfony4 из базы данных не закодированы в utf8

Почему данные из базы данных не кодируются в кодировке utf8? utf8mb64_general_ci устанавливается для каждого столбца, таблицы и самой базы данных. Мой doctrine.yaml находится ниже:

parameters:
# Adds a fallback DATABASE_URL if the env var is not set.
# This allows you to run cache:warmup even if your
# environment variables are not available yet.
# You should not need to change this value.
env(DATABASE_URL): ''

doctrine:
dbal:
    # configure these for your database server
    driver: 'pdo_mysql'
    server_version: '5.7'
    charset: utf8mb4
    default_table_options:
        charset: utf8mb4
        collate: utf8mb4_unicode_ci

    url: '%env(resolve:DATABASE_URL)%'
orm:
    auto_generate_proxy_classes: '%kernel.debug%'
    naming_strategy: doctrine.orm.naming_strategy.underscore
    auto_mapping: true
    mappings:
        App:
            is_bundle: false
            type: annotation
            dir: '%kernel.project_dir%/src/Entity'
            prefix: 'App\Entity'
            alias: App

Тем не менее, я получаю, например, "Og�lne" вместо "Ogólne".

Данные Symfony4 из базы данных не закодированы в utf8

Проблема возникает только на производстве. Локальное кодирование в порядке. Я использую MySQL 5.7 на производстве и MariaDB 10.1 локально.

См. «Черный бриллиант» в stackoverflow.com/questions/38363566/…

Rick James 11.12.2018 00:20
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
359
1

Ответы 1

Я понял это.

Я добавил этот фрагмент кода ниже в конфигурацию dbal в doctrine.yaml, и он работает !!!

options:
    1002: "SET NAMES 'UTF8'"

Оказалось, что соединение с базой данных было закодировано на латинском языке, а приведенный выше код применяет utf8.

Другие вопросы по теме