首頁  >  文章  >  後端開發  >  PHP中的運算子及PHP知識基礎

PHP中的運算子及PHP知識基礎

零下一度
零下一度原創
2017-06-23 13:19:581526瀏覽

前言

在上一章中,我們初步了解了PHP的網頁基礎和PHP的入門基礎,今天繼續給大家分享更多有關PHP的知識。

理論知識看起來可能比較枯燥一些,但是我們的實踐(敲程式碼)畢竟離不開它。

只有理論與實務結合,才可以用最少的程式碼實現更多的功能。

***本章關鍵字#:運算子;可變變數;取址符號;分支與循環;流程控制語句goto。

 

 

#下面,我們先來了解PHP中的運算子及更多PHP知識基礎



#運算子


#1、算術運算子:

+ - * / % ++ --


2、賦值運算子:= += -= *= /= %= .=(連接字串)


3、比較運算子:

> < >= <= == === <>、! = ! ==


==:要求值相等,而不需要資料型別相等

===:要求值與資料類型,必須相等

!=:只比較值,值相等為false


!= =:比較值和型,值和型別都相等為false

#4、邏輯運算子:

and/&& or/|| not/ ! xor############&&和||進行運算的時候,會發生短路:#########當左邊能夠判斷出結果的時候,便不再執行右側! ! (&&左側為假時,結果即為假;||左側為真時,結果即為真)############xor:邏輯異或。兩邊只有一個對的,結果為true;兩邊同為true或同為false,結果都為false。 ###############5、位元運算子:############將10進位轉為2進制,然後再運算。 ######

&:位元與,轉成二進位後,兩個都是1,結果才為1
|:位元或,轉為二進位後,有一個為1,就是1
^:按位異或,轉成二進位後,兩個不相同為1;兩個都為1,或都為0,結果皆為0。
~:位元取反,轉成二進位數後,所有位數取反。 1--->0  0--->1
<<:左移:轉成二進位後,左移幾位,右邊空餘位數補0。
  num << n 相當於num*2^n(※※※)
>>:右移:轉成二進位後,右移幾位,左邊空餘位數補0。
  num >> n 相當於num/2^n(※※※)

6、其他運算子:
表達式1?表達式2:表達式3:
表達式1成立執行表達式2,否則執行表達式3
##`` :呼叫系統dos環境下的命令列並執行。但由於安全性以及跨平台性,我們不支援使用;eg:`ipconfig`
@:錯誤訊息控制符:可以暫時屏蔽到一些小的錯誤訊息。但是不提倡使用!

 

#可變變數

在一個變數名稱前面,再加一個$符號。即可將第一個變數的值,作為新變數的名字。

$hello = "hello1";
$$hello = "world";//$hello1
$$$hello = "Jredu";//$world

取址符號


&:變數名前加&可以取出變數在記憶體中的位址,並且可以賦給另一個變數。
$num2 = &$num1;//取出num1的位址給num2,相當於我們說的參考資料型別。 num2和num1的值會同時改變。

 

#

分支與迴圈

1、if中的判斷條件
詳見請點選「好奇就點我吖!上一章中的第二部分【PHP入門基礎】,在這裡,部落客就不一一介紹了…

 

#2、elseif
PHP中,elseif語句可以連寫,也可以空格分隔;

例如:
else if()  √
##elseif()  √

 

3、switch
PHP中,switch結構的判斷,使用==判斷,而非===
PHP中,continue可以用於switch結構,作用與break相同。
php中,continue和break可以後接數字,表示跳過幾層循環或switch;##eg:break 3;表示終止3層循環
 

4、do-while循環

do-while循環的最後必須加分號。
do{

}while();
 

5、流程控制語句

1、break:終止本層迴圈;break後面可接數字,表示終止幾層迴圈。 break 3,終止3層循環。

2、continue:跳過此迴圈;continue後面也可接數字,表示跳過幾層迴圈
3、return:終止目前函數,並傳回值(如果有的話),但是一般只在函數中使用,腳本中不建議使用return;
4、exit(mixed 結束語)/die(mixed 結束語)函數:直接結束當前PHP腳本! !
如果有參數傳入,則先列印結束語,然後結束目前腳本。
 

#流程控制語句goto

1、用法:

定義一個跳轉的錨點,"標識符"-->"jr:"

#   在任何位置,設定goto語句,跳到指定錨點:"goto jr;"


2、作用:

遇到goto語句時,直接跳到設定的識別碼位置。


3、用來實作分支。
注意:goto語句只是讓目前的程式控制流程跳到指定錨點,但不負責往下執行幾行程式碼。
即,從錨點往下所有程式碼會依序執行。如果實現多路分支,需配合goto語句,跳過其他分支。 (詳見案例如下)


4、goto實作循環:

##詳見案例。但是,goto中,跳出循環不能使用break。


5、goto語句的優缺點:
①優點:使用靈活方便,指令級語句,效率更快,效能更好。
②缺點:goto的大量使用,對於程式碼的結構化是個災難。
不利於清晰的程式碼結構,不利於理解程式碼,而且極有可能跳過某些重要的宣告語句,導致程式碼錯誤。

 

理論不如實踐,詳情請看下面程式碼↓↓↓

 1 //goto语句实现分支 2    /*$num = true; 3    if(!$num){ 4        goto jh; 5    }else{ 6        goto jr; 7    } 8     9    jr:10    echo "3333333333333<br />";11    echo "4444444444444<br />";12    goto jj;13    14    jh:15    echo "5555555555555<br />";16    echo "6666666666666<br />";17    18    jj:*/19    20    //[1]goto循环21    $num = 0;22    jr:23    echo "1222222222221<br />";24    $num ++;25    if($num<5){26        goto jj;//通过goto跳出循环,注意不能使用break27    }28    goto jr;29    30    jj:31    echo "hahaha";32    33    /*//[2]goto实现循环34     $num=0;35     jr:36     echo"11111<br>";37     $num++;38     if($num<5){39         goto jr;40     }*/
 

#以上就是今天要跟大家分享的內容,希望對大家有幫助~

#部落客再次提醒大家,理論知識是敲好程式碼的基礎,不能忽視! 【PHP基礎入門】會持續更新,感謝大家的關注~~~

#

以上是PHP中的運算子及PHP知識基礎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn