php - $my_role = ( $user == "AS") ?8:10;
问题描述
您好我正在尝试修改这行 php 并向其添加另外两个值
$my_role = ( $user == "AS") ? 8 : 10;
我想添加值 16 和 17
我试过了
$my_role = ( $user == "AS") ? 8 : 10 : 16 : 17;
但这会导致
语法错误,意外的“:”
有人可以帮忙吗?
更新:感谢您的评论 - 是的,我设法发现这是一个三元运算符,并且向它添加更多值是荒谬的 - PHP 运算符“?”是什么?和“:”被称为,他们做什么?
解决方案
该表达式$my_role = ( $user == "AS") ? 8 : 10;
是一个三元表达式,相当于如下代码:
if($user == "AS") {
$my_role = 8;
} else {
$my_role = 10;
}
在这种情况下,$my_role = ( $user == "AS") ? 8 : 10 : 16 : 17;
或“添加两个进一步的值”没有任何意义。
推荐阅读
- python - 没有名为:bert_embedding 的模块。Python
- api - Yii2:如何将数组传递给 RESTful Web 服务
- ios - 如果要使用主故事板文件,应用程序委托必须实现窗口属性
- swift - 将 x.0 浮点数转换为 int 函数
- javascript - 打开刚刚下载的图片
- database - 在云端发送和存储传感器数据
- php - 当我单击导出时,phpmyadmin 中会发生此错误
- php - 以 params guzzle http 形式发送 url
- angular - this.mobilityService.currentMessage.subscribe 不是角度单元测试中的函数
- c# - C# Blazor:如何在后面的代码中使用 @typeparam?(有解决方法)