首页 > 解决方案 > 如何在laravel中使用条件数组从数据库中进行选择

问题描述

我有一个名为 $slugs 的数组,我需要在单个数组中接收名为 posts 的数据表单数据库表如何存档?

标签: phpdatabaselaraveleloquentquery-builder

解决方案


如果我没记错的话,您有这样的 slugs 数组,['slug', 'slug1', 'slug2']并且您想从 slugs 在单个查询中与您的 slugs 数组匹配的表中获取值。

//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 参观


推荐阅读