首頁  >  文章  >  後端開發  >  前端学PHP之运算符

前端学PHP之运算符

WBOY
WBOY原創
2016-06-20 12:41:48909瀏覽

定义

运算符即做运算的标识符号。PHP运算符一般分为算术运算符、赋值运算符、比较运算符、三元运算符、逻辑运算符、字符串连接运算符、错误控制运算符、递增递减运算符和数组运算符

算术运算符

+(加法)    $x + $y-(减法)    $x - $y*(乘法)    $x * $y/(除法)    $x / $y%(求模)    $x % $y

赋值运算符

PHP的赋值运算符有两种,分别是直接赋值"="和引用赋值"&"

[1]直接赋值

直接赋值"="把右边表达式的值赋给左边的运算数。它将右边表达式值复制一份,交给左边运算数。换言之,首先给左边运算数申请一块内存,然后把复制的值放到这块内存中

x = yx += yx -= yx *= yx /= yx %= y

[2]引用赋值

引用赋值&意味着两个变量都指向同一个数据。它将使两个变量共享一块内存,如果这个内存存储的数据变了,那么两个变量的值都会发生变化

<?php     $a = "测试内容1";    $b = $a;    $c = &$a;    $a = "测试内容2";    echo $b."<br />";//测试内容1    echo $c."<br />";//测试内容2?>

比较运算符

比较运算符主要用来进行比较运算

==         等于 ===        全等!=         不等<>         不等!==        不全等>          大于<          小于>=         大于等于<=         小于等于
<?php      $a = 1;    $b = "1";    var_dump($a == $b);    echo "<br />";//bool(true)    var_dump($a === $b);    echo "<br />";//bool(false)    var_dump($a != $b);    echo "<br />";//bool(false)    var_dump($a <> $b);    echo "<br />";//bool(false)    var_dump($a !== $b);    echo "<br />";//bool(true)    var_dump($a < $b);    echo "<br />";//bool(false)?>

三元运算符

"?:"三元运算符是一个比较运算符,对于表达式(expr1)?(expr2):(expr3),如果expr1的值为true,则此表达式的值为expr2,否则为expr3

<?php     $a = 78;//成绩    $b = $a >=60?"及格":"不及格";    echo $b;//及格?>

逻辑运算符

逻辑运算符主要是进行逻辑运算

and        与or         或xor        异或&&         与||         或!          非
<?php     $a = TRUE; //A同意    $b = TRUE; //B同意    $c = FALSE; //C反对    $d = FALSE; //D反对    echo ($a and $b);//1    echo "<br />";    echo ($a or $c);//1    echo "<br />";    echo($a xor $c xor $d);//1    echo "<br />";    echo(!$c ? "通过" :"不通过");//通过    echo "<br />";    echo($a && $d ? "通过":"不通过");//不通过    echo "<br />";    echo ($b || $c || $d ? "通过":"不通过");//通过?>

字符串运算符

字符串连接运算符是为了将两个字符串进行连接

[1]连接运算符(.)

<?php     $a = 'hello';    $b = $a . ' world!';    //hello world!    echo $b;?>

[2]连接赋值运算符(.=)

<?php     $x = 'hello';    $x .= ' world!';    //hello world!    echo $x;?>

错误控制运算符

PHP提供了一个错误控制运算符@,对于一些可能会有运行过程中出错的表达式,不希望出错时显示错误信息时,将@放置在一个PHP表达式之前。如果激活了track_error特性,表达式产生的任何错误信息都被存放在变量$php_errormsg中,此变量在每次出错时都会被覆盖

[注意]错误控制前缀@不会屏蔽解析错误的信息,不能把它放在函数或类的定义之前,也不能用于条件结构如if和foreach等

<?php$a = 1;echo @ $a;//1$b;echo @ $b;//不报错?>

递增/递减运算符

++$x     前递增$x++     后递增--$x     前递减$x--     后递减
<?php$x=10; echo ++$x; // 输出 11$y=10; echo $y++; // 输出 10$z=5;echo --$z; // 输出 4$i=5;echo $i--; // 输出 5?>

数组运算符

用于比较数组

+      联合==     相等===   全等!=     不相等<>     不相等!==   不全等
<?php$x = array("a" => "red", "b" => "green"); $y = array("c" => "blue", "d" => "yellow"); $z = $x + $y; var_dump($z);//array(4) { ["a"]=> string(3) "red" ["b"]=> string(5) "green" ["c"]=> string(4) "blue" ["d"]=> string(6) "yellow" } echo "<br>";var_dump($x == $y);//bool(false)echo "<br>";var_dump($x === $y);//bool(false)echo "<br>";var_dump($x != $y);//bool(true)echo "<br>";var_dump($x <> $y);//bool(true)echo "<br>";var_dump($x !== $y);//bool(true)?> 
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn