gpt4 book ai didi

php - Laravel dynamic where 使用 Query Builder 进行查询

转载 作者:可可西里 更新时间:2023-11-01 07:05:04 26 4
gpt4 key购买 nike

我是 Laravel 的新手。我想使用 laravel 查询构建器进行动态查询。
通常我可以在 php 中进行动态查询

$where = array(
'hello' => 'world'
);

function get($where = null){
if($where == "") $where = "";
//Function which converts where clause into queries
wheretoqueries($where); //converts where clause
$sql = "SELECT * FROM $tbl $where";
return $sql;
}
echo get($where);

如果 where 子句为 null 查询将是

SELECT * FROM $tbl

如果 where 子句不是 null 查询将是

SELECT * FROM $tbl WHERE hello = "world"

如果键和值存在,Laravel orm 可以很好地处理 where 子句

A::where($where)->get();

如果 where 为 null,下面的方法将不起作用

最佳答案

您可以链接 where查询为:

$query = Model::query();

if (!empty($value)) {
$query->where('column', $value);
}

$query->get();

您可以使用 when方法为:

Model::when($value, function ($query) use ($value) {
return $query->where('column', $value);
})
->get();

关于php - Laravel dynamic where 使用 Query Builder 进行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41322653/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com