PHP 运算符大全(完整详细版)

https://file-one.7k7s.com//uploads/20240604/89f56a7378e381410f4dfcfab3948775.jpg
陈杰 代码编程 发布于1年前 更新于1年前 943

1. 算术运算符

算术运算符用于执行常见的算术操作,如加法、减法、乘法、除法和取模。

  • +(加法):

    $a = 5;
    $b = 3;
    $result = $a + $b; // 结果是 8
    
  • -(减法):

    $a = 5;
    $b = 3;
    $result = $a - $b; // 结果是 2
    
  • *(乘法):

    $a = 5;
    $b = 3;
    $result = $a * $b; // 结果是 15
    
  • /(除法):

    $a = 6;
    $b = 3;
    $result = $a / $b; // 结果是 2
    
  • %(取模):

    $a = 5;
    $b = 3;
    $result = $a % $b; // 结果是 2
    

2. 赋值运算符

赋值运算符用于将一个值赋给一个变量,并可以结合其他操作。

  • =(赋值):

    $a = 5;
    
  • +=(加赋值):

    $a = 5;
    $a += 3; // $a 现在是 8
    
  • -=(减赋值):

    $a = 5;
    $a -= 3; // $a 现在是 2
    
  • *=(乘赋值):

    $a = 5;
    $a *= 3; // $a 现在是 15
    
  • /=(除赋值):

    $a = 6;
    $a /= 3; // $a 现在是 2
    
  • %=(模赋值):

    $a = 5;
    $a %= 3; // $a 现在是 2
    
  • **=(幂赋值):

    $a = 2;
    $a **= 3; // $a 现在是 8 (2的3次方)
    

3. 比较运算符

比较运算符用于比较两个值,返回布尔值 truefalse

  • ==(相等):

    $a = 5;
    $b = 5;
    $result = ($a == $b); // 结果是 true
    
  • ===(全等):

    $a = 5;
    $b = '5';
    $result = ($a === $b); // 结果是 false,因为类型不同
    
  • !=(不等):

    $a = 5;
    $b = 3;
    $result = ($a != $b); // 结果是 true
    
  • <>(不等,等同于 !=):

    $a = 5;
    $b = 3;
    $result = ($a <> $b); // 结果是 true
    
  • !==(不全等):

    $a = 5;
    $b = '5';
    $result = ($a !== $b); // 结果是 true,因为类型不同
    
  • >(大于):

    $a = 5;
    $b = 3;
    $result = ($a > $b); // 结果是 true
    
  • <(小于):

    $a = 5;
    $b = 3;
    $result = ($a < $b); // 结果是 false
    
  • >=(大于等于):

    $a = 5;
    $b = 5;
    $result = ($a >= $b); // 结果是 true
    
  • <=(小于等于):

    $a = 5;
    $b = 5;
    $result = ($a <= $b); // 结果是 true
    
  • <=>(太空船运算符):

    $a = 5;
    $b = 5;
    $result = $a <=> $b; // 结果是 0,因为 $a 等于 $b
    

4. 逻辑运算符

逻辑运算符用于结合条件。

  • &&(与):

    $a = true;
    $b = false;
    $result = ($a && $b); // 结果是 false
    
  • ||(或):

    $a = true;
    $b = false;
    $result = ($a || $b); // 结果是 true
    
  • !(非):

    $a = false;
    $result = !$a; // 结果是 true
    
  • and(与):

    $a = true;
    $b = false;
    $result = ($a and $b); // 结果是 false
    
  • or(或):

    $a = true;
    $b = false;
    $result = ($a or $b); // 结果是 true
    
  • xor(异或):

    $a = true;
    $b = false;
    $result = ($a xor $b); // 结果是 true
    

5. 位运算符

位运算符用于按位操作数。

  • &(按位与):

    $a = 5; // 0101
    $b = 3; // 0011
    $result = $a & $b; // 结果是 1 (0001)
    
  • |(按位或):

    $a = 5; // 0101
    $b = 3; // 0011
    $result = $a | $b; // 结果是 7 (0111)
    
  • ^(按位异或):

    $a = 5; // 0101
    $b = 3; // 0011
    $result = $a ^ $b; // 结果是 6 (0110)
    
  • ~(按位取反):

    $a = 5; // 0101
    $result = ~$a; // 结果是 -6 (按位取反后得到11111010,二进制补码形式表示-6)
    
  • <<(左移):

    $a = 5; // 0101
    $result = $a << 1; // 结果是 10 (1010)
    
  • >>(右移):

    $a = 5; // 0101
    $result = $a >> 1; // 结果是 2 (0010)
    

6. 字符串运算符

字符串运算符用于处理字符串操作。

  • .(连接):

    $a = "Hello";
    $b = "World";
    $result = $a . " " . $b; // 结果是 "Hello World"
    
  • .=(连接赋值):

    $a = "Hello";
    $a .= " World"; // $a 现在是 "Hello World"
    

7. 数组运算符

数组运算符用于比较数组。

  • +(联合):

    $a = ['a' => 'apple', 'b' => 'banana'];
    $b = ['b' => 'berry', 'c' => 'cherry'];
    $result = $a + $b; // 结果是 ['a' => 'apple', 'b' => 'banana', 'c' => 'cherry'],$a 会覆盖 $b 中的相同键
    
  • ==(相等):

    $a = ['a' => 'apple', 'b' => 'banana'];
    $b = ['a' => 'apple', 'b' => 'banana'];
    $result = ($a == $b); // 结果是 true
    
  • ===(全等):

    $a = ['a' => 'apple', 'b' => 'banana'];
    $b = ['a' => 'apple', 'b' => 'banana'];
    $result = ($a === $b); // 结果是 true
    
  • !=(不等):

    $a = ['a' => 'apple', 'b' => 'banana'];
    $b = ['a' => 'apple', 'b' => 'berry'];
    $result = ($a != $b); // 结果是 true
    
  • !==(不全等):

    $a = ['a' => 'apple', 'b' => 'banana'];
    $b = ['a' => 'apple', 'b' => 'berry'];
    $result = ($a !== $b); // 结果是 true
    

8. 其他运算符

包括一些特殊用途的运算符。

  • ??(Null 合并运算符):

    $a = null;
    $b = "default";
    $result = $a ?? $b; // 结果是 "default"
    
  • ??=(Null 合并赋值运算符):

    $a = null;
    $b = "default";
    $a ??= $b; // $a 现在是 "default"
    
  • ?:(三元运算符):

    $a = true;
    $result = $a ? "yes" : "no"; // 结果是 "yes"
    
  • =>(数组元素定义):

    $array = ['key' => 'value'];
    
  • @(错误控制运算符):

    $result = @file('non_existent_file.txt'); // 抑制错误消息
    
THE END

喜欢就支持一下吧!

版权声明:除却声明转载或特殊注明,否则均为艾林博客原创文章,分享是一种美德,转载请保留原链接,感谢您的支持和理解

时间是真理的挚友。

科尔顿

推荐阅读

数据库索引深入解析:原理、类型及优化策略

本文深入解析了数据库索引的原理、类型及优化策略,涵盖索引的常见类型(如单列索引、复合索引、全文索引等)及其应用场景,并提...

https://file-one.7k7s.com//uploads/20240604/89f56a7378e381410f4dfcfab3948775.jpg
陈杰 12月30日

MySQL字符串类型的字段 默认值NULL、空值、Empty String的区别,哪个更好?

本文详细介绍了在MySQL中默认值为NULL、空值和Empty String(空字符串)的区别,并分析了在生产环境下的优...

https://file-one.7k7s.com//uploads/20240604/89f56a7378e381410f4dfcfab3948775.jpg
陈杰 10月29日

PHP $_SERVER 超全局变量全面解读:深入挖掘 Web 开发的宝库

深入探索PHP中的$_SERVER超全局变量,包括常用字段解析、安全性考虑及实际应用示例,助力开发者构建更稳定、安全的W...

https://file-one.7k7s.com//uploads/20240604/89f56a7378e381410f4dfcfab3948775.jpg
陈杰 04月15日

探索 PHP 8.4 的革新:增强类型系统、惰性初始化与更多新特性

深入了解PHP 8.4带来的重大改进,包括更强大的类型系统、属性(Property Hooks)支持、非对称可见性、惰性...

https://file-one.7k7s.com//uploads/20240604/89f56a7378e381410f4dfcfab3948775.jpg
陈杰 01月08日

前后端分离架构的优点、挑战与最佳实践

本文详细介绍了前后端分离架构的优点、常见挑战及最佳实践,适用于开发团队在构建现代 Web 应用时参考和借鉴。

https://file-one.7k7s.com//uploads/20240604/89f56a7378e381410f4dfcfab3948775.jpg
陈杰 01月13日

实现微信小程序与服务端流式数据交互:打造实时打字效果

本文深入探讨了如何利用微信小程序与服务端之间的流式数据交互,实现一个引人入胜的实时打字效果。通过详细解析代码实现,本文展...

https://file-one.7k7s.com//uploads/20240604/89f56a7378e381410f4dfcfab3948775.jpg
陈杰 06月14日

一篇看懂:MySQL状态字段设计,ENUM 和 TINYINT 我该怎么选?

为状态字段选择正确的数据类型是数据库设计的基础。本文用最直观的方式,为你解析 ENUM 和 TINYINT 的优缺点。无...

https://file-one.7k7s.com//uploads/20240604/89f56a7378e381410f4dfcfab3948775.jpg
陈杰 08月26日