从数据库列Laravel获取价值

时间:2016-07-28 10:13:13

标签: php mysql laravel-4

可能很简单,但我有一个表,我想从一列获取值。它们是两个记录,总是两个记录,我需要第二个id的值。这是视觉

id     key      value
 1    key_1     Value_1
 2    key_2     value_2

我想采取value_2。这是我在控制器中的内容

$free = DB::table('settings')->select('value')->where('key', '=', 'free')->get();
    return View::make('site.cart.order', [
        'cart' => $cart,
        'free' => $free
    ]);

在我看来,我正在尝试这个

@if( $total < $free['value'] )

   // loop
@endif

目前我正在接受 - Undefined index: value

2 个答案:

答案 0 :(得分:1)

如果我是对的,Laravel会在那里返回一个标准类,你应该像这样访问它。

$free->value

而不是

$free['value']

但你现在必须改变它选择第一条记录

$free = DB::table('settings')->select('value')->where('key', '=', 'free')->first();

然后您可以像

一样访问它
$free->value

或者,如果您不想将get()更改为first(),则可以像这样访问它,因为get()返回一个数组。

$free[0]->value

答案 1 :(得分:1)

使用first()代替get()并使用$free->valueget()返回一个对象数组