PHP中三元运算符和Null合并运算符的简单比较

首页 编程分享 PHP丨JAVA丨OTHER 正文

青灯夜游 转载 编程分享 2019-02-02 12:58:42

简介 似,那么它们之间有什么差异?下面本篇文章就来带大家了解一下三元运算符和Null合并运算符,希望对大家有所帮助。


在PHP中,三元运算符(?:)和Null合并运算符(??)的用法相似,那么它们之间有什么差异?下面本篇文章就来带大家了解一下三元运算符和Null合并运算符,希望对大家有所帮助。

三元运算符

三元运算符是条件运算符,它有助于在执行比较和条件时减少编码中的行数。它是使用if else和嵌套if else语句的另一种方法,执行顺序是从左到右;它绝对是最好的节省时间的选项。【视频教程推荐:】

基本语法:

(条件)?(声明1):(声明2);

在三元运算符中,如果条件语句为true,则声明1将执行,否则声明2将执行。

示例:

<?php 
header("content-type:text/html;charset=utf-8");  
$num = 21; 
print($num."是");
print ($num % 2 == 0) ? "偶数" : "奇数"; 
?>

相当于:

<?php 
header("content-type:text/html;charset=utf-8");  
$num = 21; 
if($num % 2 == 0){
echo $num."是偶数";
}
else{
echo $num."是奇数";
}
?>

输出:

Null合并运算符

Null合并运算符是用于检查给定变量是否为null值,并从自定义值对返回非空值。Null合并运算符主要用于避免对象函数返回NULL值,而不是返回默认的优化值。它用于避免异常和编译器错误。

执行顺序是从右到左;执行时,右侧操作数(非空)将作为返回值,如果为null,则左侧操作数将作为返回值。它有助于提高源代码的可读性。

基本语法:

(条件)?(声明1)?(声明2);

替换成if语句:

// 使用isset()函数
// 注意条件不为空
if ( isset(条件) ) {   
    return 声明1;
} else {
    return 声明2;
}

示例:

<?php
$num = 10; 
print ($num) ?? "NULL"; 
?>

输出:

三元运算符和Null合并运算符之间的区别:

● 三元运算符是左关联的;而,Null合并运算符是右关联的。

● 三元运算符检查值是否为true;而,Null合并运算符检查该值是否为Null。

● 如果要执行更多迭代,则发现Null合并运算符比三元运算符更快。

● Null合并运算符可以提供更好的可读性。

转载链接:http://www.php.cn//php-weizijiaocheng-415006.html


Tags:


本篇评论 —— 揽流光,涤眉霜,清露烈酒一口话苍茫。


    声明:参照站内规则,不文明言论将会删除,谢谢合作。


      最新评论




ABOUT ME

Blogger:袅袅牧童 | Arkin

Ido:PHP攻城狮

WeChat:nnmutong

Email:nnmutong@icloud.com

标签云