卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章64334本站已运行4115

在php中,三元运算符和空合并运算符之间的区别是什么?

在php中,三元运算符和空合并运算符之间的区别是什么?

三元运算符

三元运算符用于将if else语句替换为一条语句。

语法

(condition) ? expression1 : expression2;

等价表达式

if(condition) {
   return expression1;
}
else {
   return expression2;
}

如果条件为真,则返回表达式1的结果,否则返回表达式2的结果。条件或表达式中不允许使用void。

空合并运算符

空合并运算符用于在变量为空时提供非空值。

语法

(variable) ?? expression;

等价表达式

if(isset(variable)) {
   return variable;
}
else {
   return expression;
}

如果变量为空,则返回表达式的结果。

示例

<!DOCTYPE html>
<html>
<head>
   <title>PHP Example</title>
</head>
<body>
   <?php
      // fetch the value of $_GET['user'] and returns 'not passed'
      // if username is not passed
      $username = $_GET['username'] ?? 'not passed';
      print($username);
      print("<br/>");
      // Equivalent code using ternary operator
      $username = isset($_GET['username']) ? $_GET['username'] : 'not passed';
      print($username);
      print("<br/>");
   ?>
</body>
</html>

输出

not passed
not passed

卓越飞翔博客
上一篇: 为什么在Python中更改列表'y'也会更改列表'x'?
下一篇: PHP通信:如何实现跨域数据传输?
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏