繁体   English   中英

Laravel eloquent 数组大小的限制传入 whereIn

[英]Laravel eloquent limit of the array size passed into whereIn

传递给 WHEREIN eloquent 方法的数组中元素的数量和/或它们的长度是否有限制? 例如:

$skuChunks = array_chunk($skus, 20);
foreach ($skuChunks as $chunk) {
    BCProduct::whereIn('sku', $chunk)->update(['flag' => $flagValue]);
}

我可以使用的最大数字是多少而不是 20? 如果 SKU 的长度为 10 个符号,与长度为 5 个符号相比,这会影响元素的数量($chunk 大小)吗?

谢谢

您可以在使用此方法发送 whereIn 时对数组进行切片

array_slice($array, 0, 5) // return the first five elements
$skuChunks = array_chunk($skus, 20);
foreach ($skuChunks as $chunk) {
    BCProduct::whereIn('sku', $chunk)->update(['flag' => $flagValue]);
}

我认为你必须做出一个条件来确保 sku 不是太多,所以一个条件是检查 sku 是否不大于 20

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM