PHP 7+MySQL 8动态网站开发从入门到精通(视频教学版)
上QQ阅读APP看书,第一时间看更新

3.9 PHP 7的新变化3——合并运算符和组合运算符

PHP 7新增加的合并运算符“??”用于判断变量是否存在且值不为NULL,如果是,它就会返回自身的值,否则返回它的第二个操作数。

语法格式如下:

    (expr1) ? ? (expr2)

如果表达式expr1为真,就返回expr1的值;如果表达式expr1为假,就返回expr2。

【例3.23】(实例文件:源文件\ch03\3.23.php)

    <?php
    $a = '酒店还有房间';
    $b = $a ?? '酒店已经没有房间';
    echo $b;
    ?>

本程序的运行结果如图3-24所示。

图3-24 合并运算符

PHP 7新增加的组合运算符用于比较两个表达式$a和$b,$a小于、等于或大于$b分别返回-1、0或1。

    <?php
    // 整数比较
    echo( 5 <=> 5);echo "<br>";
    echo( 5 <=> 6);echo "<br>";
    echo( 6 <=> 5);echo "<br>";

    // 浮点数比较
    echo( 5.6 <=> 5.6);echo "<br>";
    echo( 5.6 <=> 6.6);echo "<br>";
    echo( 6.6 <=> 5.6);echo "<br>";
    echo(PHP_EOL);

    // 字符串比较
    echo( "a" <=> "a");echo "<br>";
    echo( "a" <=> "b");echo "<br>";
    echo( "b" <=> "a");echo "<br>";
    ?>

本程序运行结果如图3-25所示。

图3-25 组合运算符