zoukankan      html  css  js  c++  java
  • PHP运算符

    算术运算符

    加减乘除取余,整除

    <?php
    $x=13;
    $y=2;
    echo ($x+$y);//加:15
    echo "
    ";
    echo ($x-$y);//减:11
    echo "
    ";
    echo ($x*$y);//乘:26
    echo "
    ";
    echo ($x/$y);//除:6.5
    echo "
    ";
    echo ($x%$y);//取余:1
    echo "
    ";
    var_dump(intdiv(10, 3));//整除运算符intdiv():int(3)
    ?>
    

      

    赋值运算符

    左操作数被设置为右侧表达式的值

    <?php
    $x=10;
    echo $x;//10
    echo "
    ";
    
    $y=20;
    echo $y +=100;//120
    echo "
    ";
    
    $z=50;
    echo $z -=30;//20
    echo "
    ";
    
    $i=5;
    echo $i *=6;//30
    echo "
    ";
    
    $j=10;
    echo $j /=5;//2
    echo "
    ";
    
    $k=15;
    echo $k /=4;//3
    echo "
    ";
    ?>
    

    运算符组合实例

    <?php
    $a = "Hello";
    $b = $a . " world!";
    echo $b; // 输出Hello world! 
     
    $x="Hello";
    $x .= " world!";
    echo $x; // 输出Hello world! 
    ?>
    

    PHP递增/递减运算符

    <?php
    $x=10;
    echo ++$x; // 先加1,后返回值,输出11
    
    $y=10;
    echo $y++; // 先输出,后加,所以输出10
    
    $z=5;
    echo --$z; // 先减掉1,才输出的是4
    
    $i=5;
    echo $i--; // 先输出,后面再减所以是5
    ?>
    

    PHP比较运算符

    <?php
    $x=100;
    $y="100";
    
    var_dump($x == $y);//等于,输出true
    echo "
    ";
    var_dump($x === $y);//绝对等于,输出false
    echo "
    ";
    var_dump($x != $y);//不等于,输出false
    echo "
    ";
    var_dump($x !== $y);绝对不等于,输出true
    echo "
    ";
    
    $a=50;
    $b=90;
    
    var_dump($a > $b);//false
    echo "
    ";
    var_dump($a < $b);//true
    ?>
    

    PHP逻辑运算符

    <?php
    $x = array("a" => "red", "b" => "green");
    $y = array("c" => "blue", "d" => "yellow");
    $z = $x + $y; // $x 和 $y 数组合并
    var_dump($z);//输出
    /*array(4) {
      ["a"]=>
      string(3) "red"
      ["b"]=>
      string(5) "green"
      ["c"]=>
      string(4) "blue"
      ["d"]=>
      string(6) "yellow"
    }*/
    var_dump($x == $y);//输出false
    var_dump($x === $y);//恒等,输出false
    var_dump($x != $y);//不等于,输出true
    var_dump($x <> $y);//不相等,输出true
    var_dump($x !== $y);//绝对不等于,输出true
    ?>
    

    三元运算符

    语法格式:(expr1) ? (expr2) : (expr3)

    PHP_EOL 是一个换行符,兼容更大平台。

    如果有返回 $_GET['user'],否则返回 nobody:

    <?php
    $test = 'syshao';
    // 普通写法
    $username = isset($test) ? $test : 'nobody';
    echo $username, PHP_EOL;//输出syshao
    
    // PHP 5.3+ 版本写法
    $username = $test ?: 'nobody';
    echo $username, PHP_EOL;//输出syshao
    ?>
    

    在 PHP7+ 版本多了一个 NULL 合并运算符 ??

    <?php
    // 如果 $_GET['user'] 不存在返回 'nobody',否则返回 $_GET['user'] 的值
    $username = $_GET['user'] ?? 'nobody';
    // 类似的三元运算符
    $username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
    ?>
    

    组合比较符(PHP7+)

    <?php
    // 整型
    echo 1 <=> 1; // 0
    echo 1 <=> 2; // -1
    echo 2 <=> 1; // 1
     
    // 浮点型
    echo 1.5 <=> 1.5; // 0
    echo 1.5 <=> 2.5; // -1
    echo 2.5 <=> 1.5; // 1
     
    // 字符串
    echo "a" <=> "a"; // 0
    echo "a" <=> "b"; // -1
    echo "b" <=> "a"; // 1
    ?>
    

    运算符优先级

    <?php
    // 优先级: &&  >  =  >  and
    // 优先级: ||  >  =  >  or
    
    $a = 3;
    $b = false;
    $c = $a or $b;
    var_dump($c);// 这里的 $c 为 int 值3,而不是 boolean 值 true,输出int(3)
    $d = $a || $b;
    var_dump($d);//这里的 $d 就是 boolean 值 true,输出true
    ?>
    

    括号优先运算符

    <?php
    // 括号优先运算
     
    $a = 1;
    $b = 2;
    $c = 3;
    $d = $a + $b * $c;
    echo $d;
    echo "
    ";
    $e = ($a + $b) * $c;  // 使用括号
    echo $e;
    echo "
    ";
    ?>
    

      

  • 相关阅读:
    java多线程--线程和线程池
    java多线程--锁学习
    vue项目中使用iconfont
    组件封装-无数据组件
    添加自定义字体
    时间格式化(自定义格式)
    深度克隆方法
    LazyMan面试题
    lodash.throttle实现节流
    第6章:关系数据库理论(考研重点)
  • 原文地址:https://www.cnblogs.com/shiyoushao/p/7875678.html
Copyright © 2011-2022 走看看