lubo_comment_query/app/Http/Controllers/CommentQueryController.php

30 lines
929 B
PHP

<?php
namespace App\Http\Controllers;
use App\Models\VideoComments;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller as BaseController;
class CommentQueryController extends BaseController
{
public function index(Request $request) {
$keyword = $request->get("keyword", "");
$query = VideoComments::query()->where("is_top", "=", 1)->with("video")->orderByDesc("created_at");
if ($keyword) {
$keyword_split = explode(" ", $keyword);
foreach ($keyword_split as $_keyword) {
$_keyword = trim($_keyword);
if (mb_strlen($_keyword) > 0) {
$query->where("content", "like", "%{$_keyword}%");
}
}
}
$comments = $query->paginate(10)->withQueryString();
return view("index", [
"keyword" => $keyword,
"comments" => $comments,
]);
}
}