手记

PHP学习笔记【8】_运算符

PHP中的运算符包括算数运算符、字符串运算符、赋值运算符、位运算符、逻辑运算符、比较运算符、递增或递减运算符、错误控制运算符。


一、算数运算符:

1、加(+) 减(-) 乘(*) 除(/) 求余(%) 递增(++) 递减(--)

2、求余时,如果被除数是负数,则结果也是负数。

3、递增/减分为前置和后置两种


二、字符串运算符:

1、字符串运算符只有一个:".",作用是拼接两个字符串成一个新的字符串

2、PHP中"+"运算符只能作为赋值运算符,不能用作字符串运算符

使用+时,如果两边是字符型则自动转换为整型,如果是字母,则输出为0,如果是以字符开头的字符串,则会截取字符串头部的数字,再进行运算。


三、赋值运算符

1、赋值(=) 加(+=) 减(-=) 乘(*=) 除(/) 求余(%=) 拼接字符串(.=)


四、位运算符:

1、对二进制位从低到高对齐后进行运算

2、按位于($) 按位或(|) 按位异或(^) 按位取反(~) 向左移位(<<) 向右移位(>>)


五、逻辑运算符

1、逻辑与(&& and) 逻辑或(|| or) 逻辑异或(xor) 逻辑非(!)\

2、属于同一逻辑结构的两个运算符有不同的优先级


六、比较运算符

1、小于(<) 大于(>) 小于等于(<=) 大于等于(>=) 相等(==) 不等(!=) 恒等(===) 非恒等(!==)

2、恒等(===)表示二者数值和类型都相等,非恒等(!==)表示二者数值或者类型不相等


<?php    $str='100';    echo 'str是一个字符串,值为:'.$str;    echo '<p>str==100:';    var_dump($str==100);    echo '<p>str==true:';    var_dump($str==true);    echo '<p>str!=null:';    var_dump($str!=null);    echo '<p>str===100:';    var_dump($str===100);    echo '<p>str===true:';    var_dump($str===true);    echo '<p>10/2.0!==5:';    var_dump(10/2.0!==5);?>

运行结果为:

str是一个字符串,值为:100

str==100:bool(true)

str==true:bool(true)

str!=null:bool(true)

str===100:bool(false)

str===true:bool(false)

10/2.0!==5:bool(true)


七、错误控制运算符:@

1、@:对程序中出现错误的表达式进行操作,进而对错误信息进行屏蔽

2、使用方法是在表达式前加上@

3、@只是对错误信息进行屏蔽,并没有真正解决错误

4、使用它不是解决问题的根本方法,因而不推荐使用


<?php    $str=5/0;    echo $str;?>

运行结果:Warning: Division by zero in C:\AppServ\www\test\php22.php on line 14


<?php    $str=@(5/0);    echo $str;?>

运行结果:错误不显示


八、三元运算符:(?:)

1、也成为三目运算符

2、用于根据一个表达式在另两个表达式中选择一个

3、三元运算符最好放在括号里使用

1234<?php    $str=100;    echo ($str==true)?存在str:没有该值;?>

运行结果:存在str


九、运算符的优先顺序和结合规则

1、PHP的运算符在运算中遵循的规则:优先级高的先执行,优先级低的后执行,同一优先级从左到右进行,也可以使用小括号,小括号内的运算最先进行。

2、可以多使用括号来减少逻辑错误的出现的概率

3、运算符的优先级表

优先级别运算符
1or,and,xor
2赋值运算符
3||,&&
4|,^
5&,.
6+,- (递增或递减运算符)
7*,/,%
8<<,>>
9++,--
10+,- (正负号运算符) ,!,~
11==,!=,<>
12<,<=,>,>=
13?:
14->
15=>


0人推荐
随时随地看视频
慕课网APP