PHP运算符_字符串运算符_逻辑运算符_三元运算符完整Demo
2016-12-09 13:15:04  By: dwtedx

运算符

PHP运算符可以根据操作数的个数分为一元运算符、二元运算符、三元运算符、一元运算符例如!(取反运算符)或++(加一运算符),PHP支持的大多数运算符都是这种二元运算符、例如+、-、*、/等算数运算符、而三元运算符只有一个(?:)、另外按运算符的功能去分类、可以分为:算术运算符、字符串运算符、赋值运算符、比较运算符、逻辑运算符、位运算符和其他运算符


算数运算符

运算符 含义 书写格式
+ 加法运算 $a+$b
- 减法运算 $a-$b
* 乘法运算 $a*$b
/ 除法运算 $a/$b
% 取除法余数运算 $a%$b
++ 自增1、例如$a++,其实是$a=$a+1 $a++
-- 自减1,例如$a--,其实是$a=$a-1 $a--

在算数运算符中、有个几乎所有程序都拥有的递增和递减规则、如下所示:

  • $a++先计算表达式的值、然后自身加1
  • $a--先计算表达式的值、然后自身减1
  • ++$a先自身加1、然后计算表达式的值
  • --$a先自身减1、然后计算表达式的值

Demo

<?php
    $count=1;
    echo $count++;  //这一行打印出1
    echo ++$count;  //这一行打印出3
?>


字符串运算符

在PHP中字符串运算符只有一个、是英文的句号(".")、也称为连接运算符、这个运算符不仅可以将两个字符串连接起来、变成合并的新字符串、也可以将一个字符串和任何标量数据类型相连接、合并成的都是新的字符串

Demo

<?php
    $name = "Kevin";                //定义一个人的名字为字符串类型
    $age = 22;                      //定义一个人的年龄为整型
    $height = 1.85;                 //定义一个人的身高为浮点型

    //将以上不同类型的变量使用点操作符和字符串连接起来、一起输出
    echo "我的名字是:".$name."、我的年龄是:".$age."、我的身高".$height."米、"."<br>";
?>


赋值运算符

  • =将一个值或表达式的结果赋值给变量
  • +=将变量与所赋的值相加后的结果再赋给该变量
  • -=将变最与所赋的值相减后的结果再赋给该变量
  • *=将变最与所赋的值相乘后的结果再赋给该变量
  • /=将变最与所赋的值相除后的结果再赋给该变量
  • %=将变最与所赋的值相除取余后的结果再赋给该变量
  • .=将变最与所赋的值相连后的结果再赋给该变量

Demo

<?php 
    $a = $b = $c = $d = 20;            //$a、$b、$c、$d的值都为20

    $a += 5;                            //等价于 $a = $a+5;
    $b -= 5;                                //等价于 $b = $b-5;
    $c *= 5;                            //等价于 $c = $c*5;
    $d /= 5;                            //等价于 $d = $d/5;
    $e %= 5;                            //等价于 $e = $e%5;

    $result="结果是:";
    $result .= "\$a自加5以后的值为: ${a}、";
    $result .= "\$b自减5以后的值为: ${b}、";
    $result .= "\$c自乘5以后的值为: ${c}、";
    $result .= "\$d自除5以后的值为: ${d}、";
    $result .= "\$e自除5取余以后的值为: ${e}、";

    echo $result;                       //输出全部相连后的字符串结果
?>


比较运算符

  • >大于、当左边操作数大于右边操作数时返回TRUE.否则返回FALSE
  • <小于、当左边操作数小于右边操作数时返回TRUE.否则返回FALSE
  • >=大于等于、当左边操作数大于等于右边操作数时返回TRUE.否则返回FALSE
  • <=小于等于、当左边操作数小于等于右边操作数时返回TRUE.否则返回FALSE
  • ==等于、当左边操作数等于右边操作数时返回TRUE.否则返回FALSE
  • ===全等于、当左边操作数等于右边操作数、并且他们的类型也相同时返回TRUE.否则返回FALSE
  • <>或!=不等于、当左边操作数不等于右边操作数时返回TRUE.否则返回FALSE
  • !==不全等于、当左边操作数不等于右边操作数或者两者类型不相等的时候返回TRUE.否则返回FALSE

Demo

<?php 
    $a=1;                           //声明一个整型变量$a值为1
    var_dump( $a > 1);              //比较的结果为bool(false)、1不大于1
    var_dump( $a < true );          //比较的结果为bool(false)、ture会自动转为1、1等于1
    var_dump( $a >= 0.01 );         //比较的结果为bool(true)、1大于0.01
    var_dump( $a <= "0.10yuan" );   //比较的结果为bool(false)、“0.10yuan”会自动转成0.10再比较
    var_dump( $a == 1 );            //比较的结果为bool(true)、1等于1
    var_dump( $a == "1" );          //比较的结果为bool(true)、“1”会自动转为1再比较、相等
    var_dump( $a === "1" );         //比较的结果为bool(false)、内容虽然相同、但不是同一类型的值
    var_dump( $a === 1 );           //比较的结果为bool(true)、内容相同、类型也相同
    var_dump( $a <> 1 );            //比较的结果为bool(false)、1等于1、所以为假
    var_dump( $a != 1 );            //比较的结果为bool(false)、同上
    var_dump( $a != 0 );            //比较的结果为bool(true)、1不等于0
    var_dump( $a !== "1" );         //比较的结果为bool(true)、虽然内容相同、但类型不同
?>


逻辑运算符

PHP提供了4种逻辑运算符:逻辑与(and或&&)、逻辑或(or或||)、逻辑非(not或!)和异或(xor)

  • 逻辑与:逻辑与表示“并且”的关系、两边的表达式必须都为TRUE、结果才能为真、否则整个表达式为假
  • 逻辑或:逻辑或表示“或者”的关系、两边的表达式只要有一个为TRUE、结果就为真、否则整个表达式为假
  • 逻辑非:逻辑非表示“取反”的关系、如果表达式为TRUE、结果就变为FALSE、如果表达式为FALSE、结果则为TRUE
  • 逻辑异或:逻辑异或在运算时两边的表达式不同时为TRUE才为TRUE、即必须是一边为TRUE、一边为FALSE、两边的表达式相同时、不管是都是TRUE还是都为FALSE、结果都为FALSE

Demo

<?php 
    $username = "apple";                //将用户名apple保存在变量$username中
    $password = "123456";               //将用户密码123456保存在变量$password中
    $email = "apple@163.com";       //将用户电子邮件apple@163.com保存在变量$email中 
    $phone = "400-7654321";             //将用户电话400-7654321保存在变量$phone中
    
    //使用一个“逻辑与”运算符、和比较运算符一起使用共同作为条件判断
    if( $username == "apple" && $password == "123456" ) {
        echo "用户名和密码输入正确";
    }
    
    //使用一个多个“逻辑或”运算符、和比较运算符一起使用共同作为条件判断
    if( $username == "" || $password == "" || $email == "" || $phone == "" ) {
        echo "所有的值一个都不能为空";
    }
    
    //多个不同的逻辑运算符混合使用、和返回boolean值函数一起使用作为条件判断
    if( (isset($email) && !empty($email)) || (isset($phone) && !empty($phone)) ) {
        echo "最少有一种联系方式";
    }
?>


三元运算符

?:可以提供简单的逻辑判断、在PHP中三元运算符就此一根独苗、等价于条件语句if...else....其语法格式如下所示:(exprl)? (expr2):(expr3)、其含义是在exprl求值为TRUE时、执行?和:之间的expr2并获取其值、在exprl求值为FALSE时、执行:之后的expr3并获取其值

Demo

<?php 
    $money=100;
    $result=$money>200?"好有钱":"没钱花了";
    
    //输出没钱花了
    echo $result;
?>


关于位运算符、在日常的程序中不常用、笔者不再做相关赘述、用兴趣的童鞋自行去百度一下吧

若资源对你有帮助、浏览后有很大收获、不妨小额打赏我一下、你的鼓励是维持我不断写博客最大动力

想获取DD博客最新代码、你可以扫描下方的二维码、关注DD博客微信公众号(ddblogs)

或者你也可以关注我的新浪微博、了解DD博客的最新动态:DD博客官方微博(dwtedx的微博)

如对资源有任何疑问或觉得仍然有很大的改善空间、可以对该博文进行评论、希望不吝赐教

为保证及时回复、可以使用博客留言板给我留言: DD博客留言板(dwtedx的留言板)

感谢你的访问、祝你生活愉快、工作顺心、欢迎常来逛逛


快速评论


技术评论

  • 该技术还没有评论、赶快抢沙发吧...
DD记账
top
+