如何在laravel中使用条件从数组中选择数据库

时间:2019-05-28 20:30:23

标签: php database laravel eloquent query-builder

我有一个名为$ slugs的数组,我需要从称为单个数组中的posts的数据库表中接收数据,如何将其归档?

2 个答案:

答案 0 :(得分:2)

如果我没记错的话,您将拥有['slug', 'slug1', 'slug2']这样的子弹数组,并且您希望从表中获取值,其中,子弹与单个查询中的子弹数组匹配。

//Solution via eloquent
$slugs = ['slug', 'slug1', 'slug2'];

Post::whereIn('slug', $slugs)->get();

// Solution via Query builder
use Illuminate\Support\Facades\DB;

$slugs = ['slug', 'slug1', 'slug2'];
DB::table('posts')->whereIn('slug', $slugs)->get();

如果要将所有帖子回复转换为数组,然后将其分配给$slugs数组,则应在解决方案下方使用

$posts = Post::all()->toArray();
$slugs[] = $posts;

进一步了解whereIn visit

答案 1 :(得分:0)

是否正确?您需要将帖子提取到名为$ slugs的数组中。 只需:

$slugs = Posts::all()->toArray();