но мне необходимо из массива $lecturers по отдельности взять столбцы и записать их в два других массива: $id и $name. Т.е. чтобы было 2 массива столбцов. Зачем? Нужно передать их в Vue компонент
DB::table('Преподаватели')->select('id_Преподавателя as id', 'ФИО as name')
$lecturers = DB::table('Преподаватели')->select('id_Преподавателя', 'ФИО')->get()->map(function ($item, $key) {
return ["id" => $item->id_Преподавателя, "name" => $item->ФИО ];
});
я же не в ручную баню, а алгоритмом)))
Об это множество копий сломано. Но вообще даже если указывать не id, то в модели имя поля первичного ключа можно переопределить.
https://laravel.com/docs/7.x/eloquent#eloquent-mod... см. раздел primary keys. Тогда он сам будет подставляться в поиск по маршруту, без дополнительного переопределения в getRouteKeyName().