从头学PHP之运算符

关于运算符的图片均来自网络,主要是自己写太麻烦了,程序是个简化自己工作量的方式,能复制粘贴就不要手写了(建议初期还是多写写,加深下记忆)在这里我就偷个懒,图片涉及到侵权及时,请通知我修改。

一、运算符

本篇文章我们将粗略的讲解在PH中不同运算符的应用主要分为几大类。

一、算术运算符

算数运算符很好理解,就是我们在小学数学中学到的加减乘除,取余,取反,设置负数,并置(连接符)

这里偷个懒(图片数据来源于网络)

代码示例

php 复制代码
<!DOCTYPE html>
<html>
    <body>
        <h1>PHP--算术运算符</h1>
        <?php
        $x=10;
        $y=6;
        echo ($x + $y); // 输出16
        echo '<br>';  // 换行
        echo ($x - $y); // 输出4
        echo '<br>';  // 换行
        echo ($x * $y); // 输出60
        echo '<br>';  // 换行
        echo ($x / $y); // 输出1.6666666666667
        echo '<br>';  // 换行
        echo ($x % $y); // 输出4
        echo '<br>';  // 换行
        echo -$x;
        ?>
    </body>
</html>

效果

二、赋值运算符

继续偷懒(图片数据来源于网络)

代码

php 复制代码
<!DOCTYPE html>
<html>
    <body>
        <h1>PHP--赋值运算符</h1>
        <?php
        $x=10;
        echo $x; // 输出10
        echo"</br>";//换行符
        $y=20;
        $y += 100;
        echo $y; // 输出120
        echo"</br>";//换行符
        $z=50;
        $z -= 25;
        echo $z; // 输出25
        echo"</br>";//换行符
        $i=5;
        $i *= 6;
        echo $i; // 输出30
        echo"</br>";//换行符
        $j=10;
        $j /= 5;
        echo $j; // 输出2
        echo"</br>";//换行符
        $k=15;
        $k %= 4;
        echo $k; // 输出3
        ?>
    </body>
</html>

效果

并置(连接符)

用于连接字符串或者变量 (两种写法)

代码片段

php 复制代码
<!DOCTYPE html>
<html>
    <body>
        <h1>PHP--赋值运算符</h1>
        <?php
        $a = "Hello";
        $b = $a . " world!";
        echo $b; // 输出Hello world!
  		echo "</br>"; // 换行符
        $x="Hello";
        $x .= " world!";
        echo $x; // 输出Hello world!
        ?>
    </body>
</html>

效果

三、递增/递减运算符

继续偷懒

代码片段

php 复制代码
<!DOCTYPE html>
<html>
    <body>
        <h1>PHP--递增/递减运算符</h1>
        <?php
        $x=10;
        echo ++$x; // 输出11
        echo "</br>"; // 换行
        $y=10;
        echo $y++; // 输出10
        echo "</br>"; // 换行
        $z=5;
        echo --$z; // 输出4
        echo "</br>"; // 换行
        $i=5;
        echo $i--; // 输出5
        ?>
    </body>
</html>

效果

四、比较运算符

代码片段

php 复制代码
<!DOCTYPE html>
<html>
    <body>
        <h1>PHP--比较运算符</h1>
        <?php
        $x=100;
        $y="100";

        var_dump($x == $y);
        echo "<br>";
        var_dump($x === $y);
        echo "<br>";
        var_dump($x != $y);
        echo "<br>";
        var_dump($x !== $y);
        echo "<br>";

        $a=50;
        $b=90;

        var_dump($a > $b);
        echo "<br>";
        var_dump($a < $b);
        ?>
    </body>
</html>

效果

五、逻辑运算符

六、数组运算符

代码片段

php 复制代码
<!DOCTYPE html>
<html>
    <body>
        <h1>PHP--数组运算符</h1>
        <?php
        $x = array("a" => "red", "b" => "green");
        $y = array("c" => "blue", "d" => "yellow");
        $z = $x + $y; // $x 和 $y 数组合并
        var_dump($z);
        echo "</br>";//换行符
        var_dump($x == $y);
        echo "</br>";//换行符
        var_dump($x === $y);
        echo "</br>";//换行符
        var_dump($x != $y);
        echo "</br>";//换行符
        var_dump($x <> $y);
        echo "</br>";//换行符
        var_dump($x !== $y);
        ?>
    </body>
</html>

效果

七、三元(三目)运算符

语法格式

php 复制代码
(expr1) ? (expr2) : (expr3) 
对 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。

自 PHP 5.3 起,可以省略三元运算符中间那部分。表达式 expr1 ?: expr3 在 expr1 求值为 TRUE 时返回 expr1,否则返回 expr3。

代码示例

变量$a是大熊嘛?是的则结果为拥有哆啦A梦,否则打劫大熊

php 复制代码
<!DOCTYPE html>
<html>
    <body>
        <h1>PHP--三元运算符</h1>
        <?php
        $a="大熊";
        //三元运算
        $result = $a=="大熊" ? "拥有哆啦A梦" : '打劫大熊';
        echo $result;
        ?>
    </body>
</html>

效果

组合比较符(php7.0以上版本)

PHP7+ 支持组合比较符(combined comparison operator)也称之为太空船操作符,符号为 <=>。组合比较运算符可以轻松实现两个变量的比较,当然不仅限于数值类数据的比较。

语法格式如下:

复制代码
$c = $a <=> $b;

解析如下:

  1. 如果 a \> b, 则 $c 的值为 1。
  2. 如果 a == b, 则 $c 的值为 0。
  3. 如果 a \< b, 则 $c 的值为 -1。

代码片段

php 复制代码
<!DOCTYPE html>
<html>
    <body>
        <h1>PHP--组合比较符</h1>
        <?php
        // 整型
        echo 1 <=> 1; // 0
        echo "</br>";//换行符
        echo 1 <=> 2; // -1
        echo "</br>";//换行符
        echo 2 <=> 1; // 1
        echo "</br>";//换行符

        // 浮点型
        echo 1.5 <=> 1.5; // 0
        echo "</br>";//换行符
        echo 1.5 <=> 2.5; // -1
        echo "</br>";//换行符
        echo 2.5 <=> 1.5; // 1
        echo "</br>";//换行符

        // 字符串
        echo "a" <=> "a"; // 0
        echo "</br>";//换行符
        echo "a" <=> "b"; // -1
        echo "</br>";//换行符
        echo "b" <=> "a"; // 1
        ?>
    </body>
</html>

二、运算符优先级

下表按照优先级从高到低列出了运算符。同一行中的运算符具有相同优先级,此时它们的结合方向决定求值顺序。

说明:左 = 从左到右,右 = 从右到左。

代码片段

php 复制代码
<!DOCTYPE html>
<html>
    <body>
        <h1>PHP--运算符优先级</h1>
        <?php
        // 优先级: &&  >  =  >  and
        // 优先级: ||  >  =  >  or

        $a = 3;
        $b = false;
        $c = $a or $b;
        var_dump($c);          // 这里的 $c 为 int 值3,而不是 boolean 值 true
        echo "</br>";
        $d = $a || $b;
        var_dump($d);          //这里的 $d 就是 boolean 值 true
        ?>
    </body>
</html>

效果

总结

本篇文章需要记的内容不少但是不死记硬背,用的时候查查,用多了就记住了

预告

下期讲流程控制(今天写累了),下期见,拜拜~

相关推荐
BingoGo1 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack1 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
BingoGo2 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack2 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
JaguarJack3 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
后端·php·服务端
BingoGo3 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
php
JaguarJack4 天前
告别 Laravel 缓慢的 Blade!Livewire Blaze 来了,为你的 Laravel 性能提速
后端·php·laravel
郑州光合科技余经理5 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
QQ5110082855 天前
python+springboot+django/flask的校园资料分享系统
spring boot·python·django·flask·node.js·php
WeiXin_DZbishe5 天前
基于django在线音乐数据采集的设计与实现-计算机毕设 附源码 22647
javascript·spring boot·mysql·django·node.js·php·html5