php笔记 08 09 10 11 12

目录

1.概念

2.算数运算符         

(1)“+” 加号

(2)"-" 减号

(3)“*” 乘号

(4)“/” 除号

(5)“%” 取模(取余)

(6)“++” 自增

(7)“--” 自减

3.字符串运算符

4.赋值运算符

(1)“=”

(2)“+=”

(2)“-=”

(3)"*="

(4)"/="

(5)"%="

(6)".="字符串连接加一个等号

5.比较运算符

(1)“==”值是否相等

(2)“===”全等(值要相等,类型也要相等)

(3)“!=”值是否不相等

(4)“<>”同(3)值是否不相等

(5)“!==”不全等

(6)“<”小于

(7)“>”大于

(8)“<=”小于等于

(9)“>=”大于等于

6.逻辑运算符 主要看最终结果(对短路而言)

(1)逻辑 与(and或者&&)两真才真

(2)逻辑 或(or或者||)一真则真

(3)逻辑 异或(xor) 相异为真

(4)逻辑 非(!) 相反

7.位运算符

8.其他运算符

(1)“? :”

(2)“ ` ` ” 类似于电脑搜索cmd

(3)“@”

(4)"=>"

(5)“->”

(6)“instanceof”

9.运算符的优先级

优先级归纳:

 圆括号的作用:

1.概念

运算符:说白了就是一种符号,这些符号可以将变量或者数据执行某种运算!

运算符对一个或多个操作数(变量或者数值)执行某种运算的符号,也称操作符。

2.算数运算符         

(1)“+” 加号

$a=1;

$b=2;

$c=$a+$b;

echo $c;

(2)"-" 减号

第一个意思:减号

$a=10;

$b=2;

$c=$a-$b;

echo $c;

第二个意思:取反

$a=1;

$b=-$a;

echo $ b;//-1

echo '<br / >';//换行

echo $a;//1

注意:取反并不会影响到被取反变量本身的值;

(3)“*” 乘号

$a=4;

$b=2;

$c=$a*$b;

echo $c;

(4)“/” 除号

$a=10;

$b=2;

$c=$a/$b;

echo $c;

注意:(被除数÷除数=商……余数)$b除数不可为0。

(5)“%” 取模(取余)

$a=10;

$b=3;

echo $a%$b;//1

(6)“++” 自增

前++

当在一个语句里面需要使用到自增变量的变量的值的时候,前++会先执行自增,然后再返回自增之后的值!

$a=10;

echo ++$a;//11

后++

当在一个语句里面需要使用到自增变量的变量的值的时候,后++会先返回变量的值,然后再去执行自增!

$a=10;

$b=2;

echo $a++;//echo $a;则输出为10;$a=$a+1;

echo ‘<br />';

echo $a;//11

前,后总结

前++

$a=10;

$b=++$a;//$a=$a+1;

echo $b;//11

后++

$a=10;

$b=$a++;//$b=$a;$a=$a+1;

echo $b;//10

注意:

$a=10;

++$a;//这种情况不需要用到自增变量时,和后++无区别。

echo $a;

(7)“--” 自减

前--

$a=10;

echo --$a;//9

后--

$a=10;

$b=2;

echo $a--;//echo $a;则输出为10;$a=$a-1;

echo ‘<br />';

echo $a;//9

注意:

$a=10;

--$a;//这种情况不需要用到自增变量时,和后--无区别。

echo $a;

注意:自增或自减是对变量而言的。

3.字符串运算符

(1)连接运算符

$a='php';

$b='笔记';

echo $a.$b;//输出php笔记

4.赋值运算符

注意:赋值运算符整个语句是有值的,所以整个语句就是一个表达式,所以我们也可以这么写:$a=$b=2;相当于$a=($b=2);也相当于$a=2;$b=2;

(1)“=”

把右边的值赋值给左边的变量

$a=1;

二元运算符:左边的操作数必须是变量,右边可以是一个表达式,也可以是一个值,一个变量等等。

表达式是PHP最重要的基石。在PHP中,几乎所写的任何东西都是一个表达式,简单但却最精确的定义一个表达式的方法就是“任何有值的东西”。

$a=1;

$b=1+$a;

(2)“+=”

$a=2;

$b=1;

$a+=$b;//$a=$a+$b;

echo $a;

(2)“-=”

$a=2;

$b=1;

$a+=$b;//$a=$a-$b;

echo $a;

(3)"*="

(4)"/="

(5)"%="

(6)".="字符串连接加一个等号

5.比较运算符

对操作数(按照比较运算符的要求,规则)进行比较;

        如果比较出的结果满足比较运算符的要求,那么结果就是true(真,成立,满足),否则就是false(假,不成立,不满足)

PHP中规定:

        使用echo输出布尔类型值的时候。

        echo true;它在页面中会输出1。      

        echo false;它会在页面什么都不输出。

        规定的,记住就好!所以说我们在测试的过程中如果需要输出布尔类型值的时候,我们最好使用var_dump()来输出更明了的结果。

(1)“==”值是否相等

如果值相等则就是true(真,成立,满足);

如果值不相等则就是false(假,不成立,不满足);

$a=1;

$b=1;

var_dump($a==$b);//输出true

(2)“===”全等(值要相等,类型也要相等)

如果两边操作数的值,不全相等则就是false(假,不成立,不满足);否则就是true(真,成立,满足);

$a=11;

$b=‘11’;

var_dump($a==$b);//输出true,不要求类型,PHP将$b的字符串转化为整形

var_dump($a===$b);//输出false

(3)“!=”值是否不相等

如果两边操作数的值,不相等则就是true(真,成立,满足);否则就是false(假,不成立,不满足);

$a=1;

$b=11;

var_dump($a!=$b);//输出true

(4)“<>”同(3)值是否不相等

(5)“!==”不全等

如果两边操作数的值,不全等则就是true(真,成立,满足);否则就是false(假,不成立,不满足);

$a=1;

$b=11;

var_dump($a!=$b);//输出true

var_dump($a!==$b);//输出true

但是

$a=1;

$b=‘1’;

var_dump($a!=$b);//输出false(只看数字,不看类型)

var_dump($a!==$b);//输出true

(6)“<”小于

比较两边操作数的值,前面是否小于后面,小于则就是true(真,成立,满足);否则就是false(假,不成立,不满足);

$a=1;

$b=11;

var_dump($a<$b);//输出true

(7)“>”大于

比较两边操作数的值,前面是否大于后面,大于则就是true(真,成立,满足);否则就是false(假,不成立,不满足);

$a=1;

$b=11;

var_dump($a>$b);//输出false

(8)“<=”小于等于

比较两边操作数的值,前面是否小于等于后面,小于等于则就是true(真,成立,满足);否则就是false(假,不成立,不满足);

$a=1;

$b=11;

var_dump($a<=$b);//输出true

(9)“>=”大于等于

比较两边操作数的值,前面是否大于等于后面,大于等于则就是true(真,成立,满足);否则就是false(假,不成立,不满足);

$a=1;

$b=11;

var_dump($a>=$b);//输出false

6.逻辑运算符 主要看最终结果(对短路而言)

概念:对表达式进行逻辑运算,运算的结果是布尔类型的值(true,false)

要求:参与逻辑运算的表达式的值是布尔类型的值,如果不是布尔类型的值会被自动转化成布尔类型的值,然后在参与运算。

(1)逻辑 与(and或者&&)两真才真

左右两边的表达式的值都是true的时候,运算的结果就是true;

否则只要其中任意一个为false,运算结果就是false。

$a=1;

$b=154;

var_dump($a &&$b);  //true

中间隐含一个问题:“短路”,运算符的优先级的问题。

$a=true;

$b=1;

$a && ++$b;

echo $b;//2

$a=false;

$b=1;

$a && ++$b;//因为$a=false,&&后面就不看了,所以输出$b的值为1;

echo $b;//短路,上面的++$b被短路了。

我们的程序语言设计者认为:

        只要有逻辑运算符(逻辑与,逻辑或)那么运算结果就是一个true或者false。

那么(me)整个运行过程就不重要了!

当然短路问题,并不会遇上太多,就算遇到也不会有什么影响!

(2)逻辑 或(or或者||)一真则真

左右两边的表达式的值有一个为true的时候,运算的结果就是true;

只有当两边的值都为false,运算结果才会是false。

$a=1;

$b=0;

var_dump($a || $b);  //true

中间隐含一个问题:“短路”,运算符的优先级的问题。

$a=true;

$b=1;

$a || ++$b;//因为$a=ture,||后面就不看了,所以输出$b的值为1;

echo $b;//短路,上面的++$b被短路了。

(3)逻辑 异或(xor) 相异为真

左右两边的表达式的值不一样的时候,运算的结果就是true;

如果两边的值一样,运算结果就是false。

$a=1;

$b=0;

var_dump($a xor $b);  //true

(4)逻辑 非(!) 相反

将原来表达式的值否定,从而与原式相反。

$a=0;

var_dump(!$a);  //true

7.位运算符

位运算用于对操作数中的每一位二进制位进行运算,PHP主要用于网站开发方面,所以位运算在PHP中使用较少。

8.其他运算符

(1)“? :”

三元运算符

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

如果表达式1的值为true,那么就执行表达式2,否则就执行表达式3。

$a=true? 10: 20;

echo $a;//10

(2)“ ` ` ” 类似于电脑搜索cmd

可以把系统的命令放在里面执行!

涉及到跨平台:

$a=`ipconfig`//可在PHP中执行

$b=`ifconfig`//null

var_dump($b);

(3)“@”

屏蔽表达式的错误(标在表达式的前面)

echo @$a;

(4)"=>"

(5)“->”

(6)“instanceof”

9.运算符的优先级

只记常用的即可,实际开发中不会经常用过于复杂的表达式。

概念:谁优先级别高就先算谁。

综合方向:规定了从哪个方向开始算的问题。

优先级归纳:

(1)[无]递增递减

(2)[右]逻辑是非

(3)[左]乘,除,取余

(4)[左]加,减,字符串连接符

(5)[无]包括大于号或者小于号的比较运算符

(6)[无]不包括大于号或者小于号的比较运算符

(7)[左]逻辑与(&&)

(8)[左]逻辑或(||)

(9)[左] ? :

(10)[右]赋值运算符

(11)[左]逻辑异或(xor)

 圆括号的作用:

        用圆括号可以将表达式里面的某一块看成一个整体!(从而改变了因为优先级而决定的运算顺序)。

使用括号可以增强代码的可读性。哪怕有的地方不需要加括号,也可以加上括号,增加可读性!

$a=1;

$b=2;

$a=($b+=3);

echo $a;//5

echo'<br / >';

echo $b;//5

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值