Laravel获取每个返回QueryBuilder字段的结果

时间:2014-03-15 12:40:41

标签: php laravel laravel-4

我想通过all()获取所有行并进入foreach我想在查询构建器中获取其他表的字段。

$getResult = webLinks::all();

$result = array();

foreach ($getResult as $value) 
{
   $query = DB::table('webInformation')
            ->where('webLink', '=', $value->id)
            ->get();
    $r['site']  = $value->webLink;
    $r['webLink']  = $query->webLink; //I GET ERROR                 
    $result[] = $r;
}

在这篇文章中,我无法将webLink webInformation表格保存到数组中。

我试试这个:

$r['webLink']  = $query->webLink;

$r['webLink']  = $query['webLink'];

如何解决这个问题?

结果:

Array
(
    [0] => stdClass Object
        (
            [id] => 2
            [webLink] => 1
            [updated_at] => 2014-03-13 10:20:16
            [created_at] => 2014-03-13 10:20:16
        )

    [1] => stdClass Object
        (
            [id] => 3
            [webLink] => 1
            [updated_at] => 2014-03-13 10:25:32
            [created_at] => 2014-03-13 10:25:32
        )

)

1 个答案:

答案 0 :(得分:2)

->get()返回找到的所有匹配内容array。如果您只想要第一个结果,则可以使用->first()

foreach ($getResult as $value) 
{
   $query = DB::table('webInformation')
            ->where('webLink', '=', $value->id)
            ->first();
    $r['site']  = $value->webLink;
    $r['webLink']  = $query->webLink;            
    $result[] = $r;
}