Привет всем. Наверное я уже пересидел за проектом, но споткнулся на одной вещи.
Форма отправляет строку в формате json
[0: {user: 1; numflow: 1}, 1:{user: 2; numflow: 2} и т.д.]
Принимаю в контроллере (знаю, что нужно делать в моделе, хочу разобраться, а потом уже выносить в модель)
public static function SaveFlow(Request $request){
$fnumber = 0; // очередь
$i = 0;
$num = array($request->all());
foreach ($num as $u) {
if(is_array($num)){
$fnumber++;
$user = User::find($u[$i]['id']);
$user->numflow = $u[$i]['numflow'];
$user->save();
$i++;
}
}
}
Получаю ошибку
local.ERROR: Undefined offset: 0
Пробовал ставить json_decode(), так появляется ошибка json_decode() expects parameter 1 to be string, array given
Пожалуйста, тыкните носом как котенка, что я делаю не так?
Заранее благодарю за ответ.
UPD
Решил проблему. Так как был многомерный массив, нужно было сделать вложенные циклы foreach
$number = 0; // очередь
$num = $value;
foreach ($num as $u) {
if(is_array($u)){
foreach ($u as $key => $value2){
foreach ($value2 as $key2 => $item) {
$number++;
$user = User::find($item);
$user->numflow = $number;
$user->save();
}
}
}
}