如何检查Eloquent查询结果中的特定列?

时间:2018-03-24 13:42:55

标签: php laravel

我的网上有免费奖励系统。在这个系统中。有2个表1"存款"其他是计划。在存款中有列" plan_id"我想如果用户有plan_d 8的记录,那么他应该提醒消息。"您已经订阅了免费奖金"

我试过了。

$sit = Deposit::where('plan_id', Plan::id)->first();

if ($sit == 8) {
    session()->flash('message', 'Please Add fund at least once to withdraw life time.');
    Session::flash('type', 'warning');
    Session::flash('title', 'warning');
    return redirect()->back();
} 

2 个答案:

答案 0 :(得分:1)

您可以直接检查用户是否存在计划ID为8的存款,因为您需要用户ID。我假设您的存款表还有require "caves" script.on_event({defines.events.on_player_dropped_item}, function(e) caves.init_layer(game) player = game.players[e.player_index] caves.move_down(player) end ) ,您的查询将如下所示

attempt to index global 'caves' (a nil value)

答案 1 :(得分:0)

您基本上检查模型实例是否等于8。

以下内容将返回Deposit或null;

的实例
$sit = Deposit::where('plan_id', Plan::id)->first();

所以你的if语句应该是;

if ($sit && $sit->plan_id == 8) {
    ...
}