您現在的位置是:首頁 > 棋牌

PHP入門讀書筆記(四): 運算子

  • 由 還是碼農的程式猿 發表于 棋牌
  • 2023-01-19
簡介運算子是用來對變數,常量或者資料進行計算的符號

被除數可以是負數嗎

運算子是用來對變數,常量或者資料進行計算的符號。php運算子包括算術運算子、字串運算子、賦值運算子、位運算子、邏輯運算子、比較運算子、遞增或遞減運算子、錯誤控制運算子等等。

一、算術運算子

算術運算子是處理算式運算的符號。符號有“+”“-”“*”“/”“%”(取餘數運算)“++”(遞增運算)“——”(遞減運算)“**”(求冪值,$a的$b次方的值)

%是求餘,如果被除數是負數,那麼取得的結果也是一個負數。

$a++,$a—— 後置遞增/遞減運算子,先返回變數的當前值,然後再將變數的值增加或者減少1。

++$a,——$a 前置遞增/遞減運算子,先將變數的值增加或者減少1,然後將值賦值給原變數。

+$a $a的正值,或者將$a轉換為int 或者float

-$a $a 的負值。

二、字串運算子

字串運算子只有一個就是英文的句號“。”。作用就是將兩個字串連線起來,組成一個新的字串。其他語言可以使用“+”來連線,但php也只能當做算術運算子使用。所以“+”如果兩邊是字元型別,會自動轉換為整型,如果是字母的,則會輸出0。如果是以數字開頭的字串,則會擷取字串頭部的數字再進行運算。

三、賦值運算子

賦值運算子把基本賦值運算子“=”右邊的值賦給左邊的變數或者常量。擴展出來的符號有“=”,“+=”,“-=”,“*=”,“/=”,“。=”(連線字元,相當於$a=$a。b),“%=”(取餘數)

PHP入門讀書筆記(四): 運算子

四、位運算子

位運算子是指對二進位制位從低位到高位對齊後進行運算。符號有:“&”(按位與),“|”(按位或),“^”(按位異或),“~”(按位取反),“<<”(向左移位)、“>>”(向右移位)

$a & $b:將把$a,$b中都為1的位設為1

$a| $b:將把$a,$b中任何一個為1的位設為1

$a^ $b:將把$a,$b中一個為1另一個為0的為位設定為1

~ $a:將$a中為0的位設定為1,反之設定0

$a<< $b:將$a中的位向左移動$b次(每移動一次表示乘以2)

$a>> $b:將$b 中的位向右移動$b次(每移動一次表示除以2)

位移在 PHP 中是數學運算。向任何方向移出去的位都被丟棄。左移時右側以零填充,符號位被移走意味著正負號不被保留。右移時左側以符號位填充,意味著正負號被保留。

五、邏輯運算子

邏輯運算子是用來組合邏輯運算的結果。符號有“&&或者and”(邏輯與),“||或者or”(邏輯或),“xor”(邏輯異或),“!”(邏輯非)

&&:當兩邊都是真的時候,結果是真,否則結果是假

||:當兩邊有一個是真的時候,結果就是真,否則都為假的時候結果是假

xor:當兩邊是一真一假的時候,結果為真。但不同時是

!:當引數是假的時候,結果為真

注意:&&、and和 ||、or 的同一個邏輯結構的兩個運算子優先順序是不一樣的。

六、比較運算子

比較運算子就是對變數或者表示式的結果進行大小、真假等比較,如果比較結果是真的,返回true,如果是假的,返回false。符號有“>”,“<”,“>=”,“<=”,“==”,“!=”,“<>”(不等),“===”(恆等),“!==”(非恆等),“<=>”(組合比較符,太空運算子)

$a===$b 說明$a 和 $b 不只是數值上相等,而且兩者的型別也要一樣。

$a!==$b 說明$a 和 $b 或者數值不相等,或者型別不相等。

$a<=>$b 當$a小於、等於、大於 $b時 分別返回一個小於、等於、大於0的 int 值。

七、錯誤控制運算子

錯誤控制運算子可以對程式中出現錯誤的表示式進行操作,進而對錯誤資訊進行遮蔽。使用的方法是錯誤的表示式前面加上@。@只是對不必要的,不影響程式執行的錯誤資訊進行遮蔽,並沒有真正解決錯誤。而對影響程式執行時就不推薦使用。如:$a=5/0 這個會出現一個警告資訊,如果不想顯示這個錯誤,就可以在表示式前面加上@。$a=@(5/0)

八、三元運算子/三目運算子

三元運算子左右是根據一個表示式在另外兩個表示式選擇一個,而不是用來在兩個語句或者程式中選擇。三元運算子最好放在括號中使用。

如:$a=100; echo ($a==true)?”aa”:”bb”; 輸出結果是aa

九、運算子的優先順序和結合規則

運算子在運算中遵循的規則是:優先順序高的操作先執行,優先順序低的後執行,同一個優先順序的操作按照從左到右的順序進行。有小括號的,括號內的最先執行。

級別為1的運算子:or、and、xor

級別為2的運算子:賦值運算子

級別為3的運算子:||、&&

級別為4的運算子:|、^

級別為5的運算子:&、。

級別為6的運算子:+、-

級別為7的運算子:/、*、%

級別為8的運算子:<<、>>

級別為9的運算子:++、——

級別為10的運算子:+、-(正負運算子)、!、~

級別為11的運算子:==、!=、<>

級別為12的運算子:<、<=、>、>=

級別為13的運算子:?:

級別為14的運算子:——>

級別為15的運算子:=>

PHP表示式

表示式是構成php程式語言的基本元素,也是重要的組成元素。如$a=20; 就是表示將值20賦值給變數 $a。 $b=$a=5; 變數$b和$a的都被賦值5。

PHP語句

一個表示式加上一個分號就形成了一條php語句。

下節預告:自定義函式

Top