[英]Laravel 5: How to verify if values separated by comma from a database table field are contained in an array?
所以,基本上我在数据库的表中有一个字段,其中包含一些用逗号分隔的值(类似于: value1, value2, value3
)。 我需要以某种方式检查这些值中的一个或多个是否包含在值数组中并检索模型。 我想要一个使用Eloquent Model Query来实现这一目标的解决方案,如果模型查询不可能,那么查询生成器解决方案也可以,或者可能是替代方案。
试图在where
语句中使用一个函数,我where
其中循环值数组,并使用like
运算符查询模型,以检查字段值是否与数组中的值匹配,最后得到如下内容:
$devices = explode(",", Input::get("devices"));
$products = Product::where(function ($q) use ($devices) {
foreach ($devices as $device) {
$q->orWhere("compatible_devices", "like", "%" . $device . "%");
}
})->get();
到目前为止工作得很好。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.