php的八种常用运算符及实例用法
算术运算符的简单应用算术运算符是处理算术运算的符号。在数字的处理中应用的最多,常用的算术运算符如下表 ? ? 这里要说的是最后两个递增/递减运算符,主要是对单独一个变量来操作的。 ? 递增/递减运算符有两种使用方法: 第一种:是先将变量增加或者减少1,然后再将值赋给原变量,叫做前置递增/递减运算符。 第二种:是将运算符放在变量后面,先返回变量的当前值,然后再将变量的当前值增加或者减少一,我们称之为后置递增/递减运算符 ? 算术运算符用法实例 下面的例子分别使用上表中的几种运算符进行计算,代码如下: <?php $a=8; $b=2$c=3; echo $a+$b.'<br/>'$a-$a*$a/$a%$c.'<br/>'$a++$a.'<br/>'; ++$a$c--$c; 运行结果如下图 ? ? 字符串运算符慨念和用法在PHP中,为我们提供的字符串运算符有两种: 第一种:连接运算符,用“.”表示,他的作用是将两个字符串连接起来,组成一个新的字符串。 第二种:赋值连接运算符,用“.=”表示,他是PHP运算符中“字符串运算符”和“赋值运算符”的结合,关于赋值连接运算符。 ? 如果使用“+”号时,PHP会认为这是一次运算。这时,如果“+”号的两边有字符串类型的时候,PHP会自动转换为整型,其中如果有字母的话,会当作0输出,如果是以数字开头的字符串,则会截取字符串头部的数字,在进行计算。 实例代码如下: <?$a='1.5a*1'$b=1$ab=$a.$b$ab.'<br/>'$ba=$ba; 输出结果如下: ? ? PHP运算中的赋值运算符? ? php赋值运算符实例 代码如下 <?$a = 20$a.'<br>'; $a += 20$a -= 20$a *= 20$a /= 20$a %= 20$a.'<br>'; 运行结果: ? ? PHP运算符中的“位运算符”位运算符是指对二进制位从低位到高位对齐后进行运算,它允许对整型数中指定的位进行求值和操作。 在PHP中的为运算符如下表所示 ? ? 下面我们用例子来上面一下上表中的运算符 <?$m=1$n=2$mn=$m&$n$mn.'<br>'$m^$m|$mn.'<br>'; 代码运行结果: ? ? 例子解释: $m&$n?: 二者都为 1 时为 1 ,否则为 0。即把 $a 和 $b 中都为 1 的位设为 1 ,否则设为 0 。 00000001 ← $m 比较结果为00000000,所以输出0 $m^$n :在按位亦或的过程中,不同为1,相同为0。 ^ 00000010 ← $n 所以结果为00000011,进而输出3。 $m|$n:?在按位或的过程中,有1为1,全0为0, 00000001 ← $m | 00000010 ← $n 则结果为00000011,所以输出3 ? 按位非或按位取反示例,代码如下 <?$m=2$m1=~$m$m1; 运行结果 ? ? 注:在计算机中,负数以其正值的补码形式表达。 1: 2的32位原码为 0000 0000 0000 0000 0000 0000 0000 0010 2: 按位取反后为 1111 1111 1111 1111 1111 1111 1111 1101 由于最前面的数为1,符号位为1,即为负数,所以,以其正值的补码形式表示为:(符号位不变,按位取反,末尾加1) 1000 0000 0000 0000 0000 0000 0000 0011 所以输出为-3 ? 左移右移代码示例 <?$m=12$n=3$m<<$m>>$mn; 运行结果: ? ? $m<<$n:将 $m 中的位向左移动 $n 次(每一次移动都表示“乘以 2”,即“乘以 2$b ”)。 0110 0000 = 96 ? $m>>$n:将 $m中的位向右移动 $n 次(每一次移动都表示“除以 2”,即“乘以 2 -$b ”)。 0000 0001 = 1 ? PHP运算中的逻辑运算符? ? 在这个实例中我们使用逻辑或中的运算符号“||”和“or”进行相同的判断操作,但是因为“||”和“or”的优先级不同,所以他们返回的结果也是不相同的,代码如下 <?$a=true$b=$c=false; if($a or $b and $c){ echo 'ok'; }else{ echo 'no'; } echo '<br>'$a || ; } 代码运行结果: ? ? 可以看到or的优先级低于and,而||的优先级高于and ? PHP运算符--”比较运算符“实例讲解? ? <?$x=100$y='100'var_dump($x==$y); $x===$x!=$x!==$y); 代码运行结果: ? ? “错误控制运算符”错误控制运算符顾名思义就是用来控制错误输出,这个控制只是将错误信息屏蔽掉,不让其显示出来,并不是真正的解决错误。 使用的方法很简单,就是在错误的表达式之前加上“@”就可以了。 ? 下面我们看一下错误控制运算符的使用实例 当我们打开一个不存在的文件时,用“@”来屏蔽错误信息的输出 在不使用“@”时; <?$file = fopen('index.php','r'); 会有以下的输出: ? ? 但是,但我们使用“@”时。这个错误信息就不会出现。 <?$file = @<?$a=100$b=($a?'ok':'no'$b; 代码运行结果: ? ?PS:虽说三元运算和 if...else...流程语句一样,但是多数情况下我们只在代码较为简单的时候使用三元运算符。 ? php运算符优先级顺序详解如果写的表达式很复杂,而且包含了较多的运行符,不妨多使用括号,想下面这样: ? ? <?$a and (($b !=$c) or (5*(50-$d))); ?> 这样就能减少出现逻辑错误的可能 有时使用括号可以增强代码的可读性。例如,下面这样: <?php $a = 3 * 3 % 5; // (3 * 3) % 5 = 4 //三元运行的结合 $a = true ? 0 : true ? 1 : 2; (true ? 0 : true) ? 1 : 2 = 2 $a = 1$b = 2$a = $b += 3; $a = ($b += 3) -> $a = 5,$b = 5 ?> ? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |