У меня есть некоторые пользовательские настройки, которые я сохраняю в массиве в MySQL. Это, как я получить текущий массив:Добавить в mysql array
$array = DB::queryFirstField("SELECT dashboard_array FROM compel_dashboard
WHERE user_id = %i", $user_id);
Который дает мне:
"s:19:"dashboard-reccomend";"
Теперь, если я хочу, чтобы добавить новую строку ($dashboard_item
содержит строку, как приборная панель-прогресса) в массив I думал:
$array[] = serialize($dashboard_item);
$query = DB::update('compel_dashboard', array(
'dashboard_array' => $array
), "user_id=%s", $user_id);
Когда я делаю этот звонок, хотя он не обновляется. Массив остается таким же, как мой первый вызов, ничего не добавляется. Если я просто обновляю это поле dashboard_array
, не пытаясь добавить его в массив, он заменяет значение «отлично», поэтому я знаю его что-то, что я делаю, добавляя в массив.
Должно ли $ array быть строкой, а не массивом, чтобы обновить поле dashboard_array правильно? – vincenth
@ vincenth Я понял. Ниже приводится описание, если вы хотите проверить это. – Packy