php - 如何将数组作为 Laravel 查询生成器的 SELECT 参数传递
问题描述
如果我有一个 AJAX 调用,它返回一个名为 的数组$selectArray
,也就是说[foo,bar,foobar]
,如何在 Laravel 查询生成器中使用它以便对其进行清理?目前,我有
// Sanitizing Input
// $acceptableSelects is an array of columns in a table. Checks if there are any elements in $selectArray that is invalid
// If the check fails, it return the default array
$sanSelectArray = !array_diff($selectArray, array_keys($accetableSelects)) && count($selectArray) < 8 ? $selectArray : [foo,foo2,foo3]
foreach($sanSelectArray as $ele){
$query->addSelect('table.' . $ele); // Required since I have a LEFT JOIN
}
这似乎非常不直观。要么有更好的方法来清理输入,要么在SELECT
没有多种addSelect()
方法的情况下传递 Array,但我找不到任何方法。
解决方案
推荐阅读
- amazon-web-services - 适用于 Kafka 的 Amazon Managed Streaming - MSK 功能和性能
- go - 如何仅使用 4 位表示 Go 中的数字?
- javascript - 数据表中的复杂计算列总和
- ruby-on-rails - 如何为以下代码编写 RSpec 测试
- python - 将字符串数据移动到值的数量是任意的新列中
- odoo - 在 Odoo 中有一种方法可以控制在树视图中单击一行时显示的表单视图
- java - 一定要维护测试用例年表> Selenium Page Factory> 元素初始化导致POM模型下的“No such Element Exception”
- linux - 内置 shell 命令“type”如何知道给定命令的路径?
- android - 如何在 Android 中更新 SQLite 中的时间戳?
- php - 在 Woocommerce 中为特定类别的产品价格之前添加文本