在laravel api中检查条件并将结果作为json响应

时间:2017-09-07 08:38:24

标签: json laravel api conditional-statements flags

这是我的Laravel API,它返回Quizzes的json响应,其中'status'= active。

Route::get('/quizzes', function() {
 $quizzes = App\Quiz::where('status', 'active')
            ->take(20)->get();

这里我创建另一个变量$ newquiz只返回更新的测验,但实际上我不需要它,我想在我的字段中显示响应,我的意思是我想传递一个标志$ new表示我的新quizes $ quizzes变量。我如何通过旗帜来表示更新的测验?

 $newquiz = DB::table('quiz')->select('id')
        ->where('created_at', '>', Carbon::now()->subDays(10))->get();


   return Response::json(array(
        'error' => false,
        'newquiz'=> $newquiz,
        'quizzes' => $quizzes,
        'status_code' => 200
    ));

2 个答案:

答案 0 :(得分:1)

$newquiz = $newquiz ->each(function ($item, $key) {
    $item->new = true;
});

$quizzes = $quizzes->merge($newquiz)

现在您可以查看$quizz->new

答案 1 :(得分:1)

$quizzes = App\Quiz::select(
                            'id',
                            '..',
                            DB::raw('created_at >= DATE_SUB(CURDATE(),INTERVAL 10 day) as isNew')
                        )->where('status', 'active')->take(20)->get();

现在你可以访问了 isNew字段有1或0.

希望它会帮助你......