自学php-运算符

来源:互联网 发布:jq遍历json数组 radio 编辑:程序博客网 时间:2024/06/06 16:31

php运算符:运算符是用来对变量,常量或者数据进行计算的符号,对一个或一组值执行指定的操作,包括:算术运算符,字符串运算符,赋值运算符,位运算符,逻辑运算符,比较运算符,递增或递减运算符,错误控制运算符。

算术运算符:处理四则运算:+ - * /  %取余  递增++($a++  ++$a)   递减--($a--   --$a)

注意:在算数运算符中使用%求余,如果被除数是负数,那么结果也是负值, 递增和递减运算符,主要是对单独一个变量操作的。

递增与递减的使用:一种是先将变量增加或者减少一,然后再赋值给原变量,称为前置递增递减运算符。另一种是将运算符放在变量后面,即先返回变量的当前值,然后再将变量的当前值增加或者减少一,称为后置递增或递减运算符。示例如下:

<?php
//声明变量
$a = -100;
$b = 50;
$c = 30;
//输出变量
echo '$a ='.$a."<br>";
echo '$b ='.$b."<br>";
echo '$c ='.$c."<br>";
echo "<p>";
//运算
echo '$a+$b='.($a + $b)."<br>";
echo '$a-$b='.($a - $b)."<br>";
echo '$a*$b='.($a * $b)."<br>";
echo '$a/$b='.($a / $b)."<br>";
echo '$a%$b='.($a % $b)."<br>";
//递增递减运算
echo '$a++='.$a++."";
echo '运算后$a的值为:'.$a."<br>";//先赋值后运算
echo '$b--='.$b--."";
echo '运算后$b的值为:'.$b."<br>";//先赋值后运算
echo '++$c='.++$c."";
echo '运算后$c的值为:'.$c."<br>";//先运算后赋值
?>

输出结果为:

$a =-100
$b =50
$c =30

$a+$b=-50
$a-$b=-150
$a*$b=-5000
$a/$b=-2
$a%$b=0
$a++=-100运算后$a的值为:-99
$b--=50运算后$b的值为:49
++$c=31运算后$c的值为:31

字符串运算:运算符只有一个"." 将两个字符串连接起来,结合成一个新的字符串。这里要和“+”区别:示例如下:

<?php
$n = "3.1415926r*r";//声明一个数字开头的字符串变量
$m = 1;//一个整形变量
$nm = $n.$m;//使用“.”运算符,将两个变量链接起来
echo $nm."<br>";
$mn = $m + $n;//使用“+”将两个运算符链接起来
echo $mn."<br>";
?>

输出结果为:

3.1415926r*r1
4.1415926

赋值运算符:把运算符右边的值赋给左边的变量:=    +=   -=  *=  /=  .=  %

位运算符:对二进制位从低到高对齐后进行运算:&与    |或   ^异或  ~取反   <<左位移  >>右位移  不同于普通运算,按位运算是对二进制的运算 实例如下:

<?php
$m = 8;
$n = 12;
$mn = $m & $n; //位与
echo $mn."<br>";
$mn = $m | $n;//位或
echo $mn."<br>";
$mn = $m ^ $n;//位异或
echo $mn."<br>";
$mn = ~$m;//位取反
echo $mn."<br>";
?>

输出的结果为:8    12    4    -9

逻辑运算符:用来组合逻辑运算的结果  &&或者and逻辑与    ||或者or逻辑或   Xor逻辑异或(一真一假)  !逻辑非  逻辑与和逻辑或两种运算符的优先级不一样

实例:

<?php
$i = true;
$j = true;
$z = false;
if($i or $j and $z)//判断
echo "true";
else
echo "false";
echo  "<br>";
if($i || $j and $z)
echo "true";
else
echo "false";
?>

输出结果为:true     false 

可以看到两个if判断中除了or和||不一样外,其他都一样,但是结果却不同,注意其优先级

比较运算符:对变量或者表达式的结果大小真假进行比较,为真返回true为假返回false

<   >    <=    >=      ==     !=   ===值和类型都一样     !==或者数值不等或者类型不等  实例:

<?php
$value = "100";
echo "\$value = \"$value\"";
echo "<p>\$value==100:";
var_dump($value==100);
echo "<p>\$value==true";
var_dump($value==true);
echo "<p>\$value!=null:";
var_dump($value!=null);
echo "<p>\$value==false:";
var_dump($value==false);
echo "<p>\$value===100:";
var_dump($value===100);
echo "<p>\$value===true:";
var_dump($value===true);
echo "<p>(10/2.0 !==5):";
var_dump(10/2.0 !==5);
?>

输出结果为:

$value = "100"

$value==100:

boolean true

$value==true

boolean true

$value!=null:

boolean true

$value==false:

boolean false

$value===100:

boolean false

$value===true:

boolean false

(10/2.0 !==5):

boolean true
错误控制运算符:在表达式前加上@,即可屏蔽掉不影响程序运行的错误提示信息,但是不能更正错误。实例:

<?php
$err = @(5 / 0);
?>     没有输出结果  但是如果不加@符号会报错

三元运算符(?:):也叫三目运算符,用于根据一个表达式在另两个表达式中选择一个,而不是用来在两个语句或者程序中选择,最好放在括号里使用  实例:

<?php
$value=100;
echo ($value==true)?三元运算:  没有该值;//对整型变量进行判断
?>

输出结果为:三元运算

运算符的优先顺序和结合规则:优先级高先计算,同级的从左到右计算,其他和四则运算基本一样,包括括号;符号较多,具体参考手册。

注意:为了尽可能减少运算符的使用,可以多使用括号     实例:

<?php
$a and (($b != $c) or (5 * (50 - $d)))
?>

PHP表达式:表达式是php程序语言的基本元素,几乎所有的对象都是表达式,最基本的形式是常量和变量,可以说一个;结尾的就算是一个表达式  实例:

<?php

"fine";

$a = "word";

?>   这就是两个表达式组成的脚本

<?php

$b = $a = 5;

?>  php的赋值是从右到左的,所以变量$a和$b都被赋值5

0 0
原创粉丝点击