【PHP入门】2.1-运算符

简介: 【PHP入门】2.1-运算符

-运算符-

运算符:operator,是一种将数据进行运算的特殊符号,在PHP中一共有十种运算符之多。

2.1.1赋值运算符

赋值运算:符号是“=”,表示将右边的结果(可以是变量、数据、常量和其它运算出来的结果),保存到内存的某个位置,然后将位置的内存地址赋值给左侧的变量(常量)。

2.1.2算术运算符

算术运算:基本算术操作

+ //执行数据累加
- //数据相减
* //键盘上没有乘法符号,使用*代替,两个数相乘
/ //正斜杠代替,表示两个数相除
% //取余(模)运算,两个数(整数)相除,保留余数

在进行除法运算或者取余运算的时候,对应的除数(第二个数)不能为0

2.1.3比较运算符

比较运算:比较两个数据的大小,或者两个内容是否相同,返回的结果都是布尔类型:满足返回true,不满足返回false

>   //左边大于右边,返回结果true
\>= //左边大于等于右边
<   //左边小于右边
<=  //左边小于或者等于右边
==  //左边的与右边的相同(大小相同)

!=  //左边的与右边的不同(大小不同)
=== //全等于,左边与右边相同:大小以及数据的类型都要相同

!== //不全等于,只有大小或者类型不同

2.1.4逻辑运算符

逻辑运算:针对不同的结果进行匹配。满足条件返回true,不满足返回false

&& //逻辑与,左边的条件与右边的条件同时成立(两边结果都为true)
|| //逻辑或,左边的条件或者右边的条件只要有一个满足即可
! //逻辑非,对已有条件进行取反,本身为true,取反结果就是false

逻辑与和逻辑或又称之为短路运算:如果第一个表达式结果已经满足条件了,那么就不会运行逻辑运算符后面的表达式:在书写代码的时候,尽量将出现概率最高的(能够直接判断出结果)的表达式放到第一位

2.1.5连接运算符

连接运算:是PHP中将多个字符串拼接的一种符号

. //将两个字符串连接到一起
.= // 复合运算,将左边的内容与右边的内容连接起来,然后重新赋值给左边变量
A .= b ===== A = A . b

2.1.6错误抑制符

在PHP中有一些错误可以提前预知,但是这些错误可能无法避免,但是又比希望报错给用户看,可以使用错误抑制符处理。

@  //在可能出错的表达式前面使用@符号即可

错误抑制符通常在生产环境(上线)会用到,在开发的时候不会用:系统本身最好没有任何错误。

2.1.7三目运算符

三目运算:有三个表达式参与的运算(简单的的分支结构缩写)

语法格式:

表达式1 ? 表达式2 :表达式3;

运算:如果表达式1成立,那么执行表达式2,否则执行表达式3;

注意:如果表达式本身比较复杂,建议使用括号包起来。

三目运算可以进行复合三目运算:三目运算中的表达式2和3都是可以是另外一个三目运算。

表达式1 ? (表达式2 ? 表达式4 : 表达式5) : (表达式3 ? 表达式5 : 表达式6);

2.1.8自操作运算符

自操作:自己操作自己的运算符

++ //在原来的值上+1
-- //在原来的值上-1
 
$a = 1;
$a++; // $a = $a + 1;

//在PHP中自操作符是可以放到变量前或者后:前置自操作和后置自操作

$a = 1;
$a++;
++$a;  //前置或者后置如果本身只有自操作,不参与其他运算(自操作同时),那么效果是一样的。但是如果自操作同时还参与别的运算,那么效果就不一样

$a = 1;
$b = $a++;    //$a++会导致$a = $a + 1; $a = 2;,上面的$b = 1
$c =++$a;     //++$a会导致$a = $a + 1; $a = 2;,$c = 2;

后置自操作:先把自己所保存的值留下来,然后改变自己,自己给别人的值是原来的值;

前置自操作:先把自己改变,然后把改变后的值给别人。

衍生符号:类似自操作

+= //左边的结果与右边结果相加,然后赋值给左边
-= //左边的减去右边的结果,然后复制给左边
*= //乘法操作
/= //除法操作
%= //模操作
   //注意:右边是一个整体 $a += $b; =è $a = $a + ($b);

如果进行除法或者取余运算,那么要考虑右边表达式的结果是否为0(为0出错)

2.1.9计算机码

计算机码:计算机在实际存储数据的时候,采用的编码规则(二进制规则)

计算机码:原码、反码和补码,数值本身最左边一位是用来充当符号位:正数为0,负数为1


原码:数据本身从十进制转换成二进制得到的结果


正数:左边符号位为0(正数的原码、反码和补码就是原码本身)


负数:左边符号位为1


反码:针对负数,符号位不变,其他位取反


补码:针对负数,反码+1


系统中存在两个0:+0和-0


+0: 00000000


-0: 10000000 原码


取反 11111111


补码 00000000


2.1.10位运算符

位运算:取出计算机中最小的单位(位bit)进行运算

& //按位与,两个位都为1,结果为1,否则为0
| //按位或,两个有一个为1,结果为1

注意:
1、 系统进行任何位运算的时候都是使用的补码
2、 运算结束之后都必须转换成原码才是最终要显示的数据
~:按位非,一个位如果为1则变成0,否则反之

^   //按位异或,两个相同则为0,不同则为1
<<  //按位左移,整个位(32位),向左移动一位,右边补0
\>> //按位右移,整个位向右移动一位,左边补符号位对应内容(正数补0,负数补1)

按位左移:乘以2的操作

按位右移:除以2的操作(不完全正确):整数除2会出现小数

2.1.11运算符优先级

运算符优先级:在多种运算符同时存在的时候,如何结合运算

相关文章
|
2月前
|
安全 关系型数据库 MySQL
PHP与MySQL交互:从入门到实践
【9月更文挑战第20天】在数字时代的浪潮中,掌握PHP与MySQL的互动成为了开发动态网站和应用程序的关键。本文将通过简明的语言和实例,引导你理解PHP如何与MySQL数据库进行对话,开启你的编程之旅。我们将从连接数据库开始,逐步深入到执行查询、处理结果,以及应对常见的挑战。无论你是初学者还是希望提升技能的开发者,这篇文章都将为你提供实用的知识和技巧。让我们一起探索PHP与MySQL交互的世界,解锁数据的力量!
|
2月前
|
PHP 开发者
PHP中的面向对象编程:从入门到精通
【9月更文挑战第27天】在这篇文章中,我们将一起探索PHP中的面向对象编程(OOP)的美妙世界。我们将从基础的概念和语法开始,然后深入到更高级的主题,如继承、多态和封装。无论你是PHP新手还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。让我们一起踏上这段旅程,发现PHP OOP的强大功能吧!
41 8
|
10天前
|
Java 程序员 PHP
01 入门PHP就来我这-安装phpstudy
路老师的PHP入门教程,带你从零开始学习PHP。首先下载并安装phpStudy,接着配置域名和端口,最后创建并运行第一个PHP文件。内容详实,适合初学者。
32 3
01 入门PHP就来我这-安装phpstudy
|
7天前
|
安全 关系型数据库 PHP
探索PHP:从入门到精通
【10月更文挑战第38天】在这篇文章中,我们将一起踏上PHP的探索之旅。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息和技巧。我们将从PHP的基础开始,逐步深入到更复杂的主题,包括面向对象编程、数据库操作、安全性问题等。最后,我们将通过一些实用的代码示例,来展示PHP的强大功能和灵活性。让我们一起开始这段旅程吧!
|
10天前
|
存储 Serverless PHP
PHP编程入门:从基础到实战
【10月更文挑战第35天】本文将带你走进PHP的世界,从最基本的语法开始,逐步深入到实际应用。我们将通过简单易懂的语言和实际代码示例,让你快速掌握PHP编程的基础知识。无论你是初学者还是有一定经验的开发者,都能在这篇文章中找到你需要的内容。让我们一起探索PHP的魅力吧!
|
27天前
|
PHP 开发者
PHP中的异常处理:从入门到精通####
本文将深入浅出地探讨PHP中的异常处理机制,包括异常的基本概念、如何抛出与捕获异常、自定义异常类以及最佳实践。无论你是PHP新手还是经验丰富的开发者,都能从中学到实用的知识,帮助你编写更健壮的代码。 --- ####
|
16天前
|
自然语言处理 关系型数据库 MySQL
PHP编程入门:构建你的第一个网页应用
【10月更文挑战第29天】本文旨在引导初学者步入PHP编程的世界,通过深入浅出的方式介绍PHP的基础知识,并指导读者如何动手实践,搭建一个简单的网页应用。文章不仅涉及PHP代码的编写,还包括了环境配置、项目结构设计以及前后端交互的基本概念。适合对Web开发感兴趣且希望快速入门的朋友阅读。
28 0
|
2月前
|
前端开发 PHP 数据库
PHP编程入门:从基础到实战
【9月更文挑战第23天】本文将引导你进入PHP编程的世界,从基础知识到实际项目应用,逐步深入。我们将一起探索PHP的基本语法、常用函数和框架使用,以及如何在实际项目中运用PHP进行开发。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供有价值的参考和启示。让我们一起踏上PHP编程的学习之旅吧!
|
2月前
|
SQL 安全 Java
PHP编程之美:从入门到精通
【9月更文挑战第18天】在这篇文章中,我们将一起探索PHP编程语言的魅力和力量。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。我们将从PHP的基本概念开始,然后深入到更复杂的主题,如面向对象编程、数据库交互和安全性等。最后,我们将通过一些实用的代码示例来巩固我们的知识。让我们一起开始这段旅程吧!
38 4
|
2月前
|
PHP 开发者
PHP中的面向对象编程:从入门到实践
本文将通过浅显易懂的语言和实例,引导读者从零开始了解PHP中的面向对象编程(OOP),并逐步深入探讨其核心概念。无论您是PHP初学者还是希望巩固基础的开发者,这篇文章都能帮助您掌握OOP的基本知识和应用。
33 1