【发布时间】:2018-09-20 09:31:43
【问题描述】:
如何将此代码转换为 Laravel (Eloquent):
$query = 'SELECT * FROM posts p WHERE (p.is_public = 1)';
if (isset($date)){ //$date format is '2018-09-01 00:00:00'
$query .= ' AND (p.created_at > "'.$date.'")';
}
if (isset($search)){
$query .= ' AND ((p.title LIKE "%'.$search.'%") OR (p.body LIKE "%'.$search.'%"))';
}
【问题讨论】:
-
我们可以看看你已经尝试过什么吗?谢谢
-
所有答案都可以在这里找到:laravel.com/docs/5.7/eloquent。尝试自己先解决它,然后,如果它仍然不起作用,请询问并向我们展示您到目前为止做了什么以及到底什么不起作用。
-
分享你的尝试?
-
$query = DB::table('posts AS p') ->where('p.is_public',1); if (isset($date)){ $query->where('p.created_at', '>', $date)); } if (isset($search)){ $search = '%'.$search.'%'; $query->where('p.title', 'like', $search) ->orWhere('p.body', 'like', $search) }