Laravel 将三元运算符用作elseif和else

Laravel 将三元运算符用作elseif和else,laravel,if-statement,conditional-operator,Laravel,If Statement,Conditional Operator,我想检查如果角色是代理,那么输出是$agencyUsers否则如果角色是官员,那么输出是$officeUsers否则我需要输出'No Group' 我尝试这样做,但是对于所有用户,输出都是“无组” <td>{{ strtolower($user->getRoleNames()) === 'agency' ? $agencyUsers : strtolower($user->getRoleNames()) === 'officer' ? $officeUsers : 'No

我想检查如果角色是代理,那么输出是
$agencyUsers
否则如果角色是官员,那么输出是
$officeUsers
否则
我需要输出'No Group'

我尝试这样做,但是对于所有用户,输出都是“无组”

<td>{{ strtolower($user->getRoleNames()) === 'agency' ? $agencyUsers : strtolower($user->getRoleNames()) === 'officer' ? $officeUsers : 'No Group'}}</td>
{{strtolower($user->getRoleNames())==='agency'?$agencyUsers:strtolower($user->getRoleNames())=='officeUsers''No Group'}

必须将第二个三元值括在括号中,这应该可以:

strtolower($user->getRoleNames()) === 'agency' ? $agencyUsers : (strtolower($user->getRoleNames()) === 'officer' ? $officeUsers : 'No Group')
但是,我建议使用不同的方法。Blade允许使用比多个ternaries更可读的if条件,甚至可以将该逻辑提取到视图函数中