Laravel,将不同的列值放在一个变量中

时间:2015-10-08 19:43:44

标签: laravel laravel-5

我有这张桌子:

Friends

id | friendid

10 | 15
12 | 10
10 | 13

我希望将所有值(来自id或friendid列)放在一个变量中。它可以吗?

我有这段代码:

$id = 10;

$id = DB::table('friends')->where('id',  $x)->orWhere('friendid', $x)->lists('friendid');

但是这行代码只返回来自' friendid'的值。列和我想要的是存储来自' friendid'并且' id'列。

1 个答案:

答案 0 :(得分:0)

您可以将第二个参数传递给lists,这将设置结果数组的键:

$query = DB::table('friends')->where('id',  $x)->orWhere('friendid', $x);

$results = $query->lists('friendid', 'id);

如果您想将它全部作为单个数组的值,请使用:

$query = DB::table('friends')->where('id',  $x)->orWhere('friendid', $x);

$ids = [];

foreach ($query->select('id', 'friendid')->get() as $record) {
    $ids[] = $record->id;
    $ids[] = $record->friendid;
}