Есть поле в БД с типом text и сравнением utf8_general_ci. В данном поле планирую хранить массив, делаю следующим образом:
$ser_arr = serialize($products_arr); //выполняю serialize
$small = gzcompress($ser_arr); //сжимаю строку
echo $small;
Выводит на экран какую-то дичь (2 строка): При этом на первой строке до сжатия все нормально.
Соответственно, такие символы в БД никак не записать. Вопрос, это нормальное поведение или что-то не так с кодировкой где-то? (В файле стоит utf-8)
ДОПОЛНЕНО: Попытка записать информацию в ячейку с типом BLOB оказалась удачной, однако при вытаскивании данных из ячейки происходит ошибка gzuncompress(): data error. Причем ошибка возникает только в модели (пишу на yii2), во вьюшке все прекрасно достается.
Может есть еще какие-то варианты?
Дело оказалось в используемом фреймворке (Yii2). Точнее в обращении к БД через ActiveRecords методом find(). Честно говоря, научиться обращаться с результатами такого запроса у меня так и не получилось, но переделав запрос под обычный select все без проблем записалось и вытащилось из БД.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей