Добрый день. Doctrine, MySQL. У сущности есть JSON поле. При

установке в поле массива, содержащего кириллицу (
$entity->setData(['test'=>'Тестовая запись'])
) - в базе получаю \u123 символы вместо кириллицы.
Геттеры возвращают кириллицу и всё нормально. Но выходит, что кириллические %LIKE% запросы по этому полю не работают. Подскажите, пожалуйста, как поправить?
Кодировка поля в базе utf8mb_bin

13 ответов

11 просмотров

в чем вопрос? все хорошо же а LIKE нужны, понял

Kos Smokvin- Автор вопроса

json_encode и Принимать строку? И тип колонки json?

Kos Smokvin- Автор вопроса
rmshell 🧬
json_encode и Принимать строку? И тип колонки json...

В ентити - поле и так json, что в базе сделало его типом longtext Но при поытке передать строку: $entity->setData(json_encode(['test'=>'Тестовая запись'])) Ругается, что сущность должна быть array

Kos Smokvin- Автор вопроса
rmshell 🧬
Я же написал принимать строку

Изменил в entity тип поля с json на text Принимаю строку - но всё равно \u123 вместо кирилицы.. Оказалось, я тупица и это вообще не связано с доктриной и базой. \u123 появляется на этапе json_encode флаг json_encode($test, JSON_UNESCAPED_UNICODE) решает проблему Понимаю, что это уже не связано с symfony - но может кто подскажет есть ли способ настроить так, чтобы этот флаг был установлен для json_encode по умолчанию? Чтобы кирилица не похерилась где нибудь по дороге от моего кода в базу через другие библиотеки.

Kos Smokvin
Изменил в entity тип поля с json на text Принимаю ...

https://github.com/automagistre/automagistre/blob/master/src/Doctrine/DBAL/Types/JsonType.php

Andrii Dembitskyi
Нет

Очередной костыль

Похожие вопросы

Обсуждают сегодня

Добрый день, не подскажите, если в OC-V3 поменять страндартную директорию /storage/ на /storage2/ - не будет сильно много проблем ?
Max Dubovsky
32
'frakturBold' => ['𝖆', '𝖇', '𝖈', '𝖉', '𝖊', '𝖋', '𝖌', '𝖍', '𝖎', '𝖏', '𝖐', '𝖑', '𝖒', '𝖓', '𝖔', '𝖕', '𝖖', '𝖗', '𝖘', '𝖙', '𝖚', '𝖛', '𝖜', '𝖝', '𝖞', '𝖟', '𝕬', '𝕭', '𝕮', '𝕯'...
Roma
4
А сколько часов мак держит зарядку в рабочем режиме? Например мой Redmi Mac (просто наклейка от айфона осталась, налепил) по началу держал часов 5 с парой открытых штормов и ...
Ross
8
Каким то образом можно определить ширину экрана пользователя перед загрузкой partial-а? Надо рассчитать ширину кадров слайдера для ресайза картинок для container-fluid.
Point 111
22
Ребят, а вот такой вопрос: если я владелец бота анонимного чата, в котором, например, имеются подписки, используя какую-нибудь ЮКассу (или тому подобное, в общем с налогами, в...
Eugene Неелов
8
а давно такие жирные буквы в админке?
Миша
4
Гнева и тупости пост. Как блять можно работать с маркетологами? Их в детстве всех родители случайно цепляли об дверные откосы? Поступила таска, на сайте "лишний счетчик Google...
Igor
4
а у тг (бот) апи вообще есть статусная страница, кстати?
e\\/gen
5
Вообще сейчас эти все провайдеры облаков оборзели. Если тебе нужно 4 ядра и 4 гб., хер где такую конфигурацию найдешь. Суют тебе сразу либо 8гб. либоа сразу 16 гб., они мне на...
Igor
4
Всем привет. А никто не в курсе у бота может быть заблокированна возможность принимать звезды? На одном боте вызываю sendInvoice с нужными параметрами все ок, на втором дела...
John Doe
2
Карта сайта