php 中三元运算符和 Null 合并运算符的区别
phpserver side programmingprogramming
三元运算符
三元运算符用于将 if else 语句替换为一个语句。
语法
(条件) ? 表达式1 : 表达式2;
等效表达式
if(条件) { return 表达式1; } else { return 表达式2; }
如果条件为真,则返回表达式1的结果,否则返回表达式2的结果。条件或表达式中不允许使用 void。
空合并运算符
空合并运算符用于在变量为空的情况下提供非空值。
语法
(variable) ?? expression;
等效表达式
if(isset(variable)) { return variable; } else { return expression; }
如果变量为空,则返回表达式的结果。
示例
<!DOCTYPE html> <html> <head> <title>PHP Example</title> </head> <body> <?php // 获取 $_GET['user'] 的值并返回"未传递" // 如果未传递用户名 $username = $_GET['username'] ??"未传递"; print($username); print("<br/>"); // 使用三元运算符的等效代码 $username = isset($_GET['username']) ? $_GET['username'] : 'not passed'; print($username); print("<br/>"); ?> </body> </html>
输出
not passed not passed