• 技术文章 >后端开发 >php教程

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

    青灯夜游青灯夜游2019-02-01 16:07:59原创1750
    在PHP中,三元运算符(?:)和Null合并运算符(??)的用法相似,那么它们之间有什么差异?下面本篇文章就来带大家了解一下三元运算符和Null合并运算符,希望对大家有所帮助。

    三元运算符

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

    基本语法:

    (条件)?(声明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."是奇数";
    }
    ?>

    输出:

    2.jpg

    Null合并运算符

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

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

    基本语法:

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

    替换成if语句:

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

    示例:

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

    输出:

    3.jpg

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

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

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

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

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

    以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

    以上就是PHP中三元运算符和Null合并运算符的简单比较的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:php strtr函数怎么用 下一篇:浅谈PHP中isset()和empty() 函数的区别
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• php三元运算符知识汇总_PHP• PHP运算符问题• php三元运算符• php三元运算符详解,运算符详解
    1/1

    PHP中文网