如何将数组作为 Laravel 查询生成器的 SELECT 参数传递

如果我有一个AJAX调用返回一个名为的数组,即,如何在Laravel查询生成器中使用它以进行清理?目前,我有$selectArray[foo,bar,foobar]


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

}

这似乎非常不直观。要么有更好的方法来清理输入或传递Array,因为没有多个方法,但我找不到任何方法。SELECTaddSelect()


潇潇雨雨
浏览 136回答 1
1回答

慕田峪7331174

可以将数组传递给 addSelect() 方法。例如:$query->addSelect(['my',&nbsp;'array',&nbsp;'of',&nbsp;'columns']);Laravel 查询构建器测试
打开App,查看更多内容
随时随地看视频慕课网APP