gpt4 book ai didi

mysql - Laravel Eloquent 根据条件进行多重选择

转载 作者:行者123 更新时间:2023-11-29 10:04:44 26 4
gpt4 key购买 nike

我找不到任何关于此的内容,只能找到其他 Eloqunt 的东西,例如 where 函数。我确实尝试了一些东西,但没有成功。

因此,使用 Eloqunt,您可以执行以下操作:

$user = User::where('id', '=', $id); 

根据我从其他地方获得的用户类型,我添加了一个选择

示例:

switch($user_type) {
case 10:
$user->select('id',
'firstname',
'lastname',
'email',
break;
case 40:
$user->select('id',
'firstname',
'lastname');
'email',
'someMoreFields', //etc
break;

}

现在,根据某些条件,我想添加更多字段来选择类似的内容。

if($someCondition) {
$user->select('type');
}

但这导致用户对象仅返回基于最后一个 select('type') 的列。有谁知道如何使用多重选择或解决方法。即使向我指出一些文档也会很好,因为我找不到任何东西。

最佳答案

您可以使用addSelect()

if($someCondition) {
$user->addSelect('type');
}

或者只是构建您在 select() 中使用的数组:

$select = ['id', 'firstname', 'lastname'];

if($someCondition) {
$select[] = 'type';
}

$user->select($select);

关于mysql - Laravel Eloquent 根据条件进行多重选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52140560/

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