「Linux系列」PHP 运算符详解

文章目录

  • 一、PHP 运算符简介
    • 1. 算术运算符
    • 2. 赋值运算符
    • 3. 比较运算符
    • 4. 逻辑运算符
    • 5. 位运算符
    • 6. 字符串运算符
    • 7. 错误控制运算符
    • 8. 类型运算符
    • 9. 执行运算符
    • 10. 递增/递减运算符
    • 11. 数组运算符
    • 12. 引用运算符
  • 二、PHP 算术运算符
    • 1. 加法运算符 (`+`)
    • 2. 减法运算符 (`-`)
    • 3. 乘法运算符 (`*`)
    • 4. 除法运算符 (`/`)
    • 5. 取模运算符 (`%`)
    • 6. 取整运算符
    • 7. 递增和递减运算符
  • 三、PHP 赋值运算符
    • 1. 基本赋值运算符 (`=`)
    • 2. 组合赋值运算符
      • 加等于 (`+=`)
      • 减等于 (`-=`)
      • 乘等于 (`*=`)
      • 除等于 (`/=`)
      • 取模等于 (`%=`)
      • 字符串连接赋值 (`.=`)
    • 3. 位运算符的赋值形式
  • 四、PHP 比较运算符
    • 1. 等于和不等于
    • 2. 恒等和不恒等
    • 3. 大于、小于、大于等于和小于等于
    • 4. 空格船运算符
  • 五、PHP 逻辑运算符
    • 1. 逻辑与 (`and` 或 `&&`)
    • 2. 逻辑或 (`or` 或 `||`)
    • 3. 逻辑非 (`!` 或 `not`)
    • 4. 逻辑异或 (`xor`)
  • 六、相关链接

一、PHP 运算符简介

在 PHP 中,运算符用于执行各种操作,如算术运算、比较、逻辑运算、字符串连接等。以下是一些 PHP 中常用的运算符:

1. 算术运算符

  • 加法 (+)
  • 减法 (-)
  • 乘法 (*)
  • 除法 (/)
  • 取模 (余数) (%)
  • 取整 (intdiv())

2. 赋值运算符

  • 赋值 (=)
  • 加等于 (+=)
  • 减等于 (-=)
  • 乘等于 (*=)
  • 除等于 (/=)
  • 取模等于 (%=)

3. 比较运算符

  • 等于 (==)
  • 全等 (===)
  • 不等于 (!=)
  • 不全等 (!==)
  • 大于 (>)
  • 小于 (<)
  • 大于等于 (>=)
  • 小于等于 (<=)
  • 空格船 (<>) // 等同于 !=

4. 逻辑运算符

  • 逻辑与 (and&&)
  • 逻辑或 (or||)
  • 逻辑非 (!)
  • 逻辑异或 (xor)

5. 位运算符

  • 按位与 (&)
  • 按位或 (|)
  • 按位异或 (^)
  • 按位非 (~)
  • 左移 (<<)
  • 右移 (>>)

6. 字符串运算符

  • 连接 (.)

7. 错误控制运算符

  • 错误控制 (@)

8. 类型运算符

  • instanceof 用于确定一个对象是否属于某个类的实例

9. 执行运算符

  • 反引号 (``) 用于执行外部命令并返回输出(与 shell_exec() 函数类似)

10. 递增/递减运算符

  • 递增 (++)
  • 递减 (--)

11. 数组运算符

  • 联合 (+) 用于合并两个数组
  • 相等 (==) 和全等 (===) 用于比较数组
  • 不等 (!=) 和不全等 (!==) 用于比较数组不等

12. 引用运算符

  • & 用于引用赋值

二、PHP 算术运算符

在 PHP 中,算术运算符用于执行数学运算,如加法、减法、乘法、除法等。这些运算符可以直接作用于数字或变量,得出相应的结果。以下是 PHP 中常用的算术运算符:

1. 加法运算符 (+)

用于将两个数相加,或者将字符串与数字相加(在这种情况下,字符串会被转换为数字,如果无法转换则结果为 0)。

$a = 5;
$b = 3;
$sum = $a + $b; // $sum 的值为 8

2. 减法运算符 (-)

用于从一个数中减去另一个数。

$a = 5;
$b = 3;
$difference = $a - $b; // $difference 的值为 2

3. 乘法运算符 (*)

用于将两个数相乘。

$a = 5;
$b = 3;
$product = $a * $b; // $product 的值为 15

4. 除法运算符 (/)

用于将一个数除以另一个数。结果是一个浮点数,除非两个操作数都是整数且可以整除。

$a = 10;
$b = 2;
$quotient = $a / $b; // $quotient 的值为 5.0

5. 取模运算符 (%)

也称为求余运算符,用于获取两个数相除的余数。

$a = 10;
$b = 3;
$remainder = $a % $b; // $remainder 的值为 1

6. 取整运算符

PHP 提供了几个取整函数,而不是单一的取整运算符。最常用的取整函数包括:

  • intval():获取变量的整数值。
  • floor():向下取整,返回不大于参数值的最大整数。
  • ceil():向上取整,返回不小于参数值的最小整数。
  • round():四舍五入取整。
$number = 7.6;
$intValue = intval($number); // $intValue 的值为 7
$floorValue = floor($number); // $floorValue 的值为 7
$ceilValue = ceil($number); // $ceilValue 的值为 8
$roundValue = round($number); // $roundValue 的值为 8

7. 递增和递减运算符

PHP 还提供了递增(++)和递减(--)运算符,它们可以前置或后置在变量前面,用于增加或减少变量的值。

$a = 5;
$a++; // $a 的值变为 6
++$a; // $a 的值变为 7$b = 5;
$b--; // $b 的值变为 4
--$b; // $b 的值变为 3

三、PHP 赋值运算符

在 PHP 中,赋值运算符用于将一个表达式的值赋给一个变量。基本的赋值运算符是 =,它将右侧表达式的值赋给左侧的变量。除了基本的赋值运算符外,PHP 还提供了一些组合赋值运算符,这些运算符允许你在赋值的同时执行其他操作,如加法、减法、乘法、除法等。

以下是 PHP 中的赋值运算符及其功能:

1. 基本赋值运算符 (=)

将右侧表达式的值赋给左侧的变量。

$a = 5; // 将值 5 赋给变量 $a

2. 组合赋值运算符

加等于 (+=)

将左侧变量与右侧表达式的值相加,并将结果赋给左侧变量。

$a = 5;
$a += 3; // $a 的值变为 8

减等于 (-=)

从左侧变量中减去右侧表达式的值,并将结果赋给左侧变量。

$a = 5;
$a -= 3; // $a 的值变为 2

乘等于 (*=)

将左侧变量与右侧表达式的值相乘,并将结果赋给左侧变量。

$a = 5;
$a *= 3; // $a 的值变为 15

除等于 (/=)

将左侧变量除以右侧表达式的值,并将结果赋给左侧变量。

$a = 10;
$a /= 2; // $a 的值变为 5.0

取模等于 (%=)

取左侧变量与右侧表达式的值的余数,并将结果赋给左侧变量。

$a = 10;
$a %= 3; // $a 的值变为 1

字符串连接赋值 (.=)

将右侧表达式的值连接到左侧变量的值的末尾,并将结果赋给左侧变量。

$str = "Hello";
$str .= " World"; // $str 的值变为 "Hello World"

3. 位运算符的赋值形式

PHP 还支持位运算符的赋值形式,如 &=|=^=<<=>>= 等,用于对变量的位进行运算并赋值。

四、PHP 比较运算符

在 PHP 中,比较运算符用于比较两个值,并返回布尔值(truefalse)来表示比较的结果。这些运算符在条件语句(如 if 语句)中特别有用,以确定程序的控制流程。以下是 PHP 中常用的比较运算符:

1. 等于和不等于

  • 等于 (==):检查两个值是否相等,不考虑类型。
  • 不等于 (!=):检查两个值是否不相等,不考虑类型。
$a = 5;
$b = "5";if ($a == $b) {echo "a 等于 b"; // 输出: a 等于 b
}if ($a != $b) {// 不会执行,因为 $a 和 $b 在使用 == 运算符时是相等的
}

2. 恒等和不恒等

  • 恒等 (===):检查两个值是否相等,并且它们的类型也相同。
  • 不恒等 (!==):检查两个值是否不相等,或者它们的类型不同。
$a = 5;
$b = "5";if ($a === $b) {// 不会执行,因为 $a 和 $b 的类型不同
}if ($a !== $b) {echo "a 不恒等于 b"; // 输出: a 不恒等于 b
}

3. 大于、小于、大于等于和小于等于

  • 大于 (>):检查左侧的值是否大于右侧的值。
  • 小于 (<):检查左侧的值是否小于右侧的值。
  • 大于等于 (>=):检查左侧的值是否大于或等于右侧的值。
  • 小于等于 (<=):检查左侧的值是否小于或等于右侧的值。
$a = 5;
$b = 3;if ($a > $b) {echo "a 大于 b"; // 输出: a 大于 b
}if ($a < $b) {// 不会执行,因为 $a 不小于 $b
}if ($a >= $b) {echo "a 大于等于 b"; // 输出: a 大于等于 b
}if ($a <= $b) {// 不会执行,因为 $a 不小于等于 $b
}

4. 空格船运算符

  • 空格船 (<>):是 != 的另一种写法,用于检查两个值是否不相等。这个运算符在 PHP 中不常用,并且在一些编程风格中可能被视为不推荐的。
$a = 5;
$b = 3;if ($a <> $b) {echo "a 不等于 b"; // 输出: a 不等于 b
}

五、PHP 逻辑运算符

在 PHP 中,逻辑运算符用于执行逻辑运算,并返回布尔值(truefalse)。这些运算符允许你组合或比较多个条件,并根据这些条件的逻辑结果来执行相应的代码块。以下是 PHP 中常用的逻辑运算符:

1. 逻辑与 (and&&)

逻辑与运算符用于检查两个条件是否都为 true。只有当两个操作数都为 true 时,结果才为 true。否则,结果为 false

$a = true;
$b = true;if ($a && $b) {echo "a 和 b 都为 true"; // 输出: a 和 b 都为 true
}

2. 逻辑或 (or||)

逻辑或运算符用于检查至少有一个条件是否为 true。如果至少有一个操作数为 true,则结果为 true。只有当两个操作数都为 false 时,结果才为 false

$a = true;
$b = false;if ($a || $b) {echo "a 或 b 至少有一个为 true"; // 输出: a 或 b 至少有一个为 true
}

3. 逻辑非 (!not)

逻辑非运算符用于对单个条件取反。如果操作数为 true,则结果为 false;如果操作数为 false,则结果为 true

$a = true;if (!$a) {echo "a 为 false"; // 不会输出,因为 $a 为 true
} else {echo "a 为 true"; // 输出: a 为 true
}

4. 逻辑异或 (xor)

逻辑异或运算符用于比较两个条件,并在其中一个条件为 true 但不是两者都为 true 时返回 true。如果两个条件都为 false 或都为 true,则结果为 false

$a = true;
$b = false;if ($a xor $b) {echo "a 或 b 只有一个为 true"; // 输出: a 或 b 只有一个为 true
}

六、相关链接

  1. php官网
  2. php_Github
  3. PHP实现Token
  4. 「PHP系列」PHP简介与起步
  5. 「PHP系列」PHP语法介绍
  6. 「PHP系列」PHP变量
  7. 「PHP系列」PHP echo/print语句、数据类型详解
  8. 「PHP系列」PHP 常量/字符串、类型比较

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/782645.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

echarts双柱状堆叠图

效果 代码 option {tooltip: {trigger: axis,axisPointer: { // 坐标轴指示器&#xff0c;坐标轴触发有效type: shadow // 默认为直线&#xff0c;可选为&#xff1a;line | shadow},formatter: function (params) { var res<div><p>时间&am…

数据库聚簇索引和非聚簇索引的区别

聚簇索引&#xff08;Clustered Index&#xff09;和非聚簇索引&#xff08;Non-clustered Index&#xff09;是数据库中两种不同的索引类型&#xff0c;它们的主要区别在于数据的存储方式和索引的结构&#xff1a; 数据存储方式&#xff1a; 聚簇索引&#xff1a;索引的叶子节…

ssm框架笔记-maven

html是骨头 css使皮肤 js是你能做的动作 MAVEN 依赖管理&#xff1a;1.声明dependenciys标签 2.maven search3。 版本号提取 3.$引用 3.2依赖传递和冲突 依赖传递指的是当一个模块或库 A 依赖于另一个模块或库 B&#xff0c;而 B 又依赖于模块或库 C&#xff0c;那么 A 会间…

vue3+vite模版框架 tabs右键刷新时丢失路由参数

问题&#xff1a; 标题栏的tabs的右键&#xff1a;刷新时&#xff0c;没有保存上一个页面传递过来的参数 分析&#xff1a; TagView.vue刷新事件 function refreshSelectedTag(view: TagView) {console.log(|--执行刷新, view)tagsViewStore.delCachedView(view);const {full…

吴恩达2022机器学习专项课程(一) 4.1 梯度下降

问题预览 梯度下降算法的作用是&#xff1f;梯度下降的过程&#xff1f;梯度下降和最小化成本函数的联系&#xff1f;所有的成本函数都是一个形状吗&#xff1f;在非凸形状中&#xff0c;梯度下降的更新过程是&#xff1f;在非凸形状中&#xff0c;不同的初值对最小化成本函数…

用XMLHttpRequest发送和接收JSON数据

百度的AI回答了一个案例&#xff1a; var xhr new XMLHttpRequest(); var url "your_endpoint_url"; // 替换为你的API端点 var data JSON.stringify({key1: "value1",key2: "value2" });xhr.open("POST", url, true); xhr.setReq…

杨辉三角在现代数学和计算机科学中有哪些应用?

杨辉三角&#xff0c;又称帕斯卡三角&#xff0c;在现代数学和计算机科学中有着广泛的应用。它不仅是一种数学上的优美构造&#xff0c;而且在组合数学、概率论、数论、代数以及其他科学领域中扮演着重要角色。以下是杨辉三角在现代数学和计算机科学中的一些应用&#xff1a; …

对于提高Web安全,WAF能有什么作用

数字化时代&#xff0c;网络安全已经成为了一个不可忽视的重要议题。网络攻击事件频发&#xff0c;各种安全隐患层出不穷&#xff0c;如何有效地保护我们的网络空间&#xff0c;确保信息安全&#xff0c;已成为一项迫切的任务。而Web应用防火墙&#xff0c;正是守护网络安全的一…

【LIMS】CMA与CNAS:中国认证体系中的两大支柱

目录 一、CMA&#xff1a;[中国计量认证](http://cma-cma.org.cn/)什么是CMA&#xff1f;CMA的作用 二、CNAS&#xff1a;[中国合格评定国家认可委员会](https://www.cnas.org.cn/)什么是CNAS&#xff1f;CNAS的作用 三、CMA与CNAS的关系相互促进共同目标 结语系列文章版本记录…

国内顶级大牛整理:分布式消息中间件实践笔记+分布式核心原理解析

XMPP JMS RabbitMQ 简介 工程实例 Java 访问RabbitMQ实例 Spring 整合RabbitMQ 基于RabbitMQ的异步处理 基于RabbitMQ的消息推送 RabbitMQ实践建议 虚拟主机 消息保存 消息确认模式 消费者应答 流控机制 通道 总结 ActiveMQ 简介 工程实例 Java 访问ActiveMQ实例…

2024年03月CCF-GESP编程能力等级认证C++编程四级真题解析

本文收录于专栏《C++等级认证CCF-GESP真题解析》,专栏总目录:点这里。订阅后可阅读专栏内所有文章。 一、单选题(每题 2 分,共 30 分) 第 1 题 若函数声明为 int f(int &x){ x+=3; return x; } ,则对声明的变量 int a=3 ,下面哪个调用能够改变 a 的值( )。 A. f(&…

MySQL 8.0 新特性之不可见主键

数据库设计通常需要满足一定的范式要求&#xff0c;其中主键更是最基本的要求。不过&#xff0c;数据库管理系统却允许我们创建没有主键的表。这样的表在 MySQL 中会带来查询性能低下、复制延迟甚至无法实现高可用配置等问题。 为此&#xff0c;MySQL 8.0.30 版本引入了一个新…

【21-40】计算机网络基础知识(非常详细)从零基础入门到精通,看完这一篇就够了

【21-40】计算机网络基础知识&#xff08;非常详细&#xff09;从零基础入门到精通&#xff0c;看完这一篇就够了 以下是本文参考的资料 欢迎大家查收原版 本版本仅作个人笔记使用21、HTTPS是如何保证数据传输的安全&#xff0c;整体的流程是什么&#xff1f;&#xff08;SSL是…

运筹学基础(三):求解整数规划的切平面法(cutting plane method)

文章目录 算法思想一个例子参考文档 算法思想 先将整数规划问题松弛为线性规划问题&#xff0c;然后割掉线性规划问题可行域的一部分&#xff08;只包含非整数解&#xff09;&#xff0c;使得线性规划问题的最优解在原整数规划问题的可行域某顶点上取得。 因此&#xff0c;割平…

解决Nginx常见问题的技术指南

Nginx作为一款高性能的Web服务器和反向代理服务器&#xff0c;被广泛应用于互联网和企业内部网络中。然而&#xff0c;在实际应用中&#xff0c;我们常常会遇到各种各样的问题&#xff0c;包括配置错误和资源不足等。本文将介绍一些常见的Nginx问题以及相应的解决方法&#xff…

kvm虚拟机迁移--来自gpt

离线迁移 离线迁移KVM虚拟机主要涉及将虚拟机完全关闭&#xff0c;然后移动虚拟机的磁盘文件和配置文件到新的宿主机上&#xff0c;并在新宿主机上启动虚拟机。下面是具体的步骤和命令&#xff1a; 步骤 1: 关闭虚拟机 首先&#xff0c;在源宿主机上关闭目标虚拟机。确保虚拟…

Flink SQL 基于Update流出现空值无法过滤问题

问题背景 问题描述 基于Flink-CDC &#xff0c;Flink SQL的实时计算作业在运行一段时间后&#xff0c;突然发现插入数据库的计算结果发生部分主键属性发生失败&#xff0c;导致后续计算结果无法插入&#xff0c; 超过失败次数失败的情况问题报错 Caused by: java.sql.BatchUp…

智慧公厕:让公共厕所变得更智能、更卫生、更舒适的解决方案

近年来&#xff0c;随着城市发展的不断壮大&#xff0c;公共设施的建设也越来越受到重视。而公共厕所作为城市基础设施的一部分&#xff0c;是城市文明程度的重要体现。然而&#xff0c;传统的公共厕所在使用、运行、管理、养护等方面存在诸多问题&#xff0c;严重影响了市民的…

特征选择集大成的包-arfs(python)

特征选择集大成的包-arfs&#xff08;python&#xff09; 一、介绍 arfs介绍文档https://arfs.readthedocs.io/en/latest/Introduction.html 英文好的朋友可以阅读作者写的介绍&#xff1a; All relevant feature selection means trying to find all features carrying info…

YOLOv5改进系列:升级版ResNet的新主干网络DenseNet

一、论文理论 论文地址&#xff1a;Densely Connected Convolutional Networks 1.理论思想 DenseNet最大化前后层信息交流&#xff0c;通过建立前面所有层与后面层的密集连接&#xff0c;实现了特征在通道维度上的复用&#xff0c;不但减缓了梯度消失的现象&#xff0c;也使其…