Я пытаюсь обновить свой проект L5.1 -> L5.2. В руководстве по обновлению есть одна вещь, которая не ясна для меня:
Метод
lists
в сборщике, построителе запросов и объектах запроса запроса Eloquent был переименован вpluck
. Подпись метода остается той же.
- как сделать laravel query builder, как активная запись codeigniter
- laravel query php как получить максимальное значение в пределах диапазона
- Застройщик запросов Laravel Общая ошибка 2031
- paginator call on query builder не возвращает объект paginator в laravel 4 (в конкретном случае)
- Laravel собственная переменная в области
Это нормально, переименовать refactoting из lists()
в pluck()
не проблема. Но что с полезным методом pluck pluck()
который был в L5.0 и L5.1?
Из документации 5.0 :
Получение одиночной колонки из строки
$name = DB::table('users')->where('name', 'John')->pluck('name');
Какая альтернатива для старого метода pluck pluck()
в L5.2?
ОБНОВИТЬ:
Пример:
var_dump(DB::table('users')->where('id', 1)->pluck('id'));
L5.1:
// int(1)
L5.2:
// array(1) { [0]=> int(1) }
Текущей альтернативой для pluck()
является value()
.
В исходном примере почему бы не использовать метод select () в запросе базы данных?
$name = DB::table('users')->where('name', 'John')->select("id");
Это будет быстрее, чем использование фреймворка PHP, поскольку он будет использовать SQL-запрос для выбора строки для вас. Для обычных коллекций я считаю, что это не так, но поскольку вы используете базу данных …
Larvel 5.3: Указание пункта выбора