您好,登錄后才能下訂單哦!
這篇“PHP運算符和流程控制是什么”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“PHP運算符和流程控制是什么”文章吧。
運算符對一個或者多個操作數(變量或者數值)執行某種運算的符號,因此也叫操作符。
賦值運算符
算術運算符
比較運算符
邏輯運算符
連接運算符
錯誤抑制符
三目運算符
自操作運算符
位運算符
<?php $a = 5; $b = 6; echo -$a;echo "<br>"; //-5 echo $a - $b;echo "<br>"; //-1 echo $a * $b;echo "<br>"; //30 echo $a / $b;echo "<br>";//6/5 echo $a%$b;echo "<br>"; //5 echo $a++;echo "<br>";//6,此時$a的值為6 echo $a;echo "<br>";//6 echo ++$a;echo "<br>";//7 echo $a--;echo "<br>";//7,此時$a的值為6 echo $a;echo "<br>";//6 echo --$a;echo "<br>";//5 ?>
在PHP中使用.進行字符串拼接,也叫連接運算符;而在JS中字符串拼接用的是+,訪問對象中的屬性用的是.
<?php $name = "xiaofeng"; $str = "hello,".$name;echo "<br>";//.講$name和hello,拼接起來 //$str = "Hello," + $name;echo "<br>";//0 echo $str; ?>
=:右邊賦值給左邊
.=:左邊的連接右邊字符串,然后賦值給左邊
+=:左邊的加上右邊的結果,然后賦值給左邊
-=:左邊的減去右邊的結果,然后賦值給左邊
*=:左邊的乘以右邊的結果,然后賦值給左邊
/=:左邊的廚藝右邊的結果,然后賦值給左邊
%=:左邊的取模右邊的結果,然后賦值給左邊
<?php $a = 6;$b =5; $b +=$a;echo $b;echo '<br>';//11,此時$b=11 $b -=$a;echo $b;echo '<br>';//11-6=5,此時$b=5 $b *=$a;echo $b;echo '<br>';//5*6=30,此時$b=30 $b /=$a;echo $b;echo '<br>';//30/6=5,此時$b=5 $b %=$a;echo $b;echo '<br>';//5 $b .=$a;echo $b;echo '<br>';//56 .相當于字符串連接符講5和6拼接起來了,屬于字符串 var_dump($b) ?>
<?php $a = 6;$b = 4; $c = $a == $b;//false $c = $a === $b; //false $c = $a != $b;//true $c = $a !== $b;//true $c = $a <> $b;//true $c = $a > $b;//true $c = $a >= $b;//true $c = $a <= $b;//true var_dump($c) ?>
注:PHP規定使用echo輸出布爾類型的時候,echo true輸出為1;echo false頁面什么都不輸出。
&&:邏輯與,兩個表達式參與運算,都為真則返回真,否則返回FALSE
||:邏輯或,兩個表達式參與運算,一個為真就返回真,都為假返回FALSE
!:邏輯非,一個表達式參與運算,為真則返回FALSE,為假則返回TRUE
<?php $a = true; $b = false; $c = $a and $b;//true,賦值運算的優先級比and高 $c = ($a and $b);//flase $c = ($a && $b);//false $c = ($a or $b);//true $c = ($a || $b);//true $c = ($a xor $b);//true $c = !$a;//flase var_dump($c) ?>
誰的優先級高就先算誰的,并且規定了從哪個方向開始算的問題。
<meta charset="gbk"> <h2>其他運算符</h2> <?php #?問號——三元運算符 $a = 10; $b = 20; $c = $a>$b?$a:$b;//20 意思是如果a>b,輸出a反之輸出b echo $c;echo "<hr/>"; #~反引號——執行cmd命令 $cmd="whoami"; echo "<pre>".`$cmd`;//執行whoami命令 $d = "net user"; echo `$d`;echo "<hr/>"; #@符號——屏蔽運算錯誤 $name; echo @$name;//屏蔽沒有定義的錯誤 ?>
自上而下的執行即可,PHP語句默認執行的過程就是順序執行這點跟PHP一樣。
<?php echo "first";echo "<hr>"; echo "second";echo "<hr>"; echo "third";echo "<hr>"; ?>
單向條件
雙向條件
多向條件
<meta charset = "gbk"> <h4>if——單向分支執行</h4> <?php $pass = 60; $score = 60; if($score >= $pass){ echo "恭喜你通過了!"; }//如果通過了就輸出echo,沒通過則無回顯。 ?> <h4>if——雙方向分支執行</h4> <?php $pass = 60; $score = 59; if($score >= $pass){ echo "Pass"; }else{ echo "掛了,sorry!"; } ?> <h4>if——多方向分支執行</h4> <?php $pass = 60; $score = 59; if($score >= 85 && $score<=100){ echo "優秀"; }elseif($score >=75){ echo "良好"; }elseif($score >=60){ echo "及格"; }else{ echo "不及格"; }
<meta charset = "gbk"> <h4>switch——分支執行</h4> <?php $day = 29; switch($day){ case 30: echo "小月"; break; case 31: echo "大月"; break; case 28: echo "平月"; break; case 29: echo "沒有一個月是29天的!"; } ?>
用switch語句注意一下幾點:
case后面的語句是不需要()的
每個case后面都不要忘記后面跟上break語句跳出循環
如果case后面沒有接上break,說明內容是同下的!
while語句
do...while語句
<?php $i = 0;//計數器 while($i < 4){ //循環條件 echo $i++."<hr>";//.是將來分割線連接起來,相當于Python里面的end="" } ?> <hr> <?php $i = 1; //int(0)是flase,flase是不會循環 while($i){ echo $i++."<br>"; if($i == 2){ break; } } ?>
<?php $i = 0; do { echo $i++."<br>"; }while($i < 5) ?>
<?php for($i = 0;$i < 6;$i++){ echo "for循環遍歷0到5,開始:"."$i"."<hr>"; } ?>
<?php for($i = 1;$i < 10;$i++){ for($j = 1;$j < $i+1;$j++){ echo $i.'x'.$j.'='.$i*$j." "; } echo "<br>"; } ?>
用于for、while、do...while、foreach、switch中斷這些語句!后面用數字表示跳出幾層循環,默認沒有數字就表示跳出當前循環。
<meta charset = "gbk"> <h4>break語句</h4> <?php for($i = 0;$i < 6;$i++){ echo "for循環遍歷0到5,開始:".$i."<br/>"; for($j=1;$j<=5;$j++){ echo $j; if($j == 2){ #break;//只跳出本層循環 break 2;//跳出兩層循環 } } echo "<br>"; } ?>
用在循環語句中,代表著本次循環輪空,不是結束整個循環語句。
<meta charset = "gbk"> <h4>continue語句</h4> <?php for($i = 0;$i < 6;$i++){ if($i == 3){ continue;//當i=3的時候,結束! } echo "for循環遍歷0到5,開始:"."$i"."<hr>"; } ?>
用處是結束當前整個php腳本,awd的時候經常用到包括die()語句也是!
<?php for($i = 0;$i < 6;$i++){ if($i == 3){ exit("整個腳本到此執行完畢了哦!");//當i=3的時候,整個腳本結束! } echo "for循環遍歷0到5,開始:"."$i"."<hr>"; } ?>
以上就是關于“PHP運算符和流程控制是什么”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。