2015-08-26 4 views
2

У меня есть этот запрос:Получить массив целочисленных с Laravel построитель запросов

$inError = DB::table('errors')    
     ->select('fk_fact') 
     ->distinct() 
     ->get(); 

И я хочу, чтобы вернуть массив целых чисел, вместо того, чтобы возвратить массив объектов, я не хочу, чтобы перебрать все результаты и нажмите значения один за другим ... Есть ли способ сделать это с Laravel?

ответ

5

Конечно, вы можете использовать встроенный в lists() метод:

$inError = DB::table('errors')    
    ->select('fk_fact') 
    ->distinct() 
    ->lists('fk_fact'); 

Вы, возможно, придется лавировать на ->all() после списки вызовов.

Вот подправлять пример из базы данных мне довелось иметь до:

>>> DB::table('teams')->select('name')->distinct()->lists('name'); 
=> [ 
    "AFC Bournemouth", 
    "Arsenal", 
    "Aston Villa", 
    "Chelsea", 
    "Crystal Palace", 
    "Everton", 
    "Leicester City", 
    "Liverpool", 
    "Manchester City", 
    "Manchester United", 
    "Newcastle United", 
    "Norwich City", 
    "Southampton", 
    "Stoke City", 
    "Sunderland", 
    "Swansea City", 
    "Tottenham Hotspur", 
    "Watford", 
    "West Bromwich Albion", 
    "West Ham United", 
    ] 
+0

Спасибо человек! он работал –

+0

Отлично! Я рад, что это помогло. –

Смежные вопросы