PHP笔记4-运算符

算术运算符

基础:

1,是针对数字类型(intfloat)进行的运算;

2,取余运算符(%),只针对整数进行运算;

自增自减运算符:++   --

这是“单目”运算符。是针对一个数字进行的自加1或自减一运算。

“英文字母字符串”,也可以进行“自加运算”。

前自增和后自增的区别(自减类似)

1,如果是独立语句中,前自增(++$i)和后自增($i++)结果是一样的!

2,如果自增运算在其他语句中,前自加是先将自身加1,然后进行其他运算,而后自加,是先进行其他运算,然后自加——可见,这种情况,影响的是“其他运算”,而该变量本身仍然是结构一样。

3,前自加效率略高于后自加——推荐在循环中使用前自加。

比较运算符

常见不同类型(标量类型)数据之间的比较规律:

逻辑运算符

基本运算规则(真值表):

1&&:只要有一个是false,结果就是false

2||:   只要有一个是true,结果就是true

逻辑运算符的“短路现象”:

在一个逻辑与或逻辑或运算中,如果该运算符的前后都需要进行一定的“逻辑判断”(比如最常见的就是大小比较),则此时我们应该将这种逻辑判断的“简单情形”放在此逻辑运算符的前面(左边),这样就可以造成逻辑运算的短路效果,以达到提示效率的目的。

字符串运算符:  .  

赋值运算符:  

=

+=    -=   *=   /=    %=  

条件(三目,三元)运算符:

数据? 数据2  : 数据3

位运算符

基础规定

按位与:1 & 1==>>1    1 & 0==>>0   0 & 1==>>0   0 & 0==>>0 

按位或:1 | 1==>>1     1 |  0==>>1   0 | 1==>>1    0 | 0==>>0

按位非:~1==>> 0     ~0 ==>> 1

按位异或:1 ^ 1==>>0     1  ^  0==>>1   0 ^ 1==>>1    0 ^ 0==>>0

整数的按位与运算(&)

就是讲210进制整数的2进制数值形式的每一个对应位上的数字(此时只有10了)进行基本按位与运算之后所得到的结果。

 

整数的按位或运算:

整数的按位左移运算

补充知识:原码,反码,补码

原码:就是数学上的一个数字的二进制形式,并规定:

正数的第1位为0

负数的第1为为1

反码:

正数的反码是其本身;

负数的反码是这样:符号位不变,其余位取反。

补码:

正数的补码是其本身;

负数的补码是这样:符号位不变,其余位取反后加1(即反码加1)。

 

位运算符的应用:管理一组事物的开关状态

这里说的一组事物的开关状态,要理解为其实是一组数据的开关状态:即该组数据的每一个,都只有2个值,或2个状态,可以表示为“真假”,或10

做法(假设有5个事物/数据):

1,设定对应的5个常量D1, D2, D3, D4, D5,其值分别是1,2,4,8, 16

2,,定义一个变量$state,该变量就代表这5个事物/数据的任意可能组合。

3,则我们可以有如下3个任务(对应3种算法逻辑):

3.1:判断任意一个事物/数据的当前状态(n代表1-5中的其中一个):

if(  ($state  &   Dn)  >  0){开着}else{关着}

3.2:打开指定的任意一个事物/数据:

$state = $state | Dn; //此时对应的该事物/数据处于“开启”状态,而且不影响其他

3.3:打开指定的任意一个事物/数据:

$state = $state & (~Dn); //此时对应的该事物/数据处于“关闭”状态,而且不影响其他

数组运算符

+:合并2个数组而已,如果其中有重复的下标,则以前一个数组中的为准。

==:判断是否“模糊相等”,

array(1=>1, 2=>2 )  ==  array(2=>2, 1=>1); //true

===:判断是否“严格相等”;

array(1=>1, 2=>2 )  ===  array(2=>2, 1=>1); //false

错误控制运算符@抑制一个表达式在运行时所产生的错误提示。

运算符的优先级

1,意识到运算符有优先级;

2,括号最优先,赋值通常是最“落后”。

3,如果不是和清晰,就尽量加上括号来明确界定其运算顺序。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值