php新语法 ?: ?? 的用法(三元运算符,合并运算符)

 
更多

php 三元运算符(?:),null合并运算符(??)的用法。

?: 三元运算符的简写形式

expr1 ?: expr3

在 expr1 求值为 true 时返回 expr1,否则返回 expr3。

<?php
// 三元运算符简写的例子
$action = (!empty($_POST['action'])) ?: 'default';

// 以上等同于以下的  if/else 语句
if (empty($_POST['action'])) {
    $action = 'default';
} else {
    $action = $_POST['action'];
}

?? NULL 合并运算符

当 expr1 为 null,表达式 (expr1) ?? (expr2) 等同于 expr2,否则为 expr1。

尤其要注意,当不存在左侧的值时,此运算符也和 isset() 一样不会产生警告。 对于 array 键尤其有用。

<?php
// NULL 合并运算符的例子
$action = $_POST['action'] ?? 'default';

// 以上例子等同于于以下 if/else 语句
if (isset($_POST['action'])) {
    $action = $_POST['action'];
} else {
    $action = 'default';
}
打赏

本文固定链接: https://www.cxy163.net/archives/3065 | 绝缘体

该日志由 绝缘体.. 于 2023年09月24日 发表在 未分类 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: php新语法 ?: ?? 的用法(三元运算符,合并运算符) | 绝缘体
关键字: , , , ,

php新语法 ?: ?? 的用法(三元运算符,合并运算符):等您坐沙发呢!

发表评论


快捷键:Ctrl+Enter