好的,我有一个网站,允许用户发布类似于 Facebook 和 Twitter 的内容。当用户提交帖子时,我想检查过去 10 小时内是否已提交该用户的相同内容。如果是这样,我想将用户重定向回来,使用“重复帖子”之类的内容
我目前用它来检查用户在过去一小时内是否发布了超过 10 个帖子:
//Only allow user to post 10 statuses each hour
$timestamp = time() - 36000;
$recentStatuses = Status::where('user_id', Auth::user()->id)->where('created_at', '>', $timestamp)->orWhere('created_at', '=', $timestamp)->skip(0)->take(10)->get();
if ($recentStatuses->count() <= 9) {
//post content
}
现在我想检查用户是否在过去 10 小时内提交了相同的内容,类似于 Facebook 和 Twitter 阻止发布相同内容以防止垃圾邮件的方式。
最佳答案
你可以做类似的事情:
$recentStatuses->each(function($item) use($request){
if($item->comment == $request->input('comment'))
{
return false;
}
});
关于php - 如何使用 Laravel 检查类似于 Twitter 的重复帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39054936/