跟生活中的同樣。php
注意運算順序:先乘除,後加減(由於運算符優先級不同,算術運算中同級運算符從左至右運算)。shell
求模也叫作求餘,運算符爲`%`。函數
代碼:post
<?php $a = 5; $b = -$a; var_dump($b); ?>
效果:優化
int -5
在變量前面綴上-進行取反,若是$a是字符串,運算結果將會是0網站
=
spa
賦值操做的順序爲從右到左。操作系統
<?php $a = 5; $a = $a + 5; var_dump($a); ?>
上面的代碼等價於下面的:.net
<?php $a = 5; $a += 5; var_dump($a); ?>
運算符」+=「是一個操做符,所以加號和等號要連在一塊兒,中間沒有空格。它實現的操做是在自身(運算符左邊的值)的基礎上,加上右邊的值。
相似的有」-=「,」*=「,」/=「,」%=「。
自加1或者自減1,PHP提供了更爲優化的運算操做符」++「,」-- 「。
++$a與$a++的區別:
前一個被稱爲前置運算(prefix),後一個被稱爲後置運算(postfix)。
前置運算先進行自加運算,而後運算過的變量參加那條語句的其餘運算。
後置運算先使用未自加的變量參與那條語句的其餘運算,而後再進行自加運算。
鏈接運算符」.「,就是一個點。返回其左右參數鏈接後的字符串。
鏈接賦值運算符」.=「,是一個點和一個等號,中間沒有空格。將其右邊參數附加到左邊的參數後。
比較運算符容許對兩個值進行比較,所得的結果爲邏輯值true(真)或者false(假),也就是布爾值。
邏輯運算有如下4個操做符:
!(非,取邏輯反,NOT)
&&(邏輯與,而且,AND)
||(邏輯或,或者,OR,在鍵盤上Enter上面能夠打出來)
Xor(邏輯異或)
<?php //And(邏輯與) $a and $b; //Or(邏輯或) $a or $b; //Xor(邏輯異或) $a xor $b; //Not(邏輯非) ! $a; //And邏輯與 $a && $b; //Or(邏輯或) $a || $b; ?>
在代碼中能夠看出運算符&&(與)和||(或)有兩種表示方法。這是由於在PHP中,這兩種不一樣的運算符優先級不同。符號&&和||高於文字and和or,相似於運算符優先級乘除大於加減。
位運算符容許對整型數中指定的位進行置位。
在編程中,一個字節由8個bit組成,例如 0010 1001,這表示一個字節。 置位的意思是將某一個bit設置爲1,如將 0010 1001的第七位置位,置位後即爲 0010 1011。 與置位相對應的是復位,復位是將某一個bit設置爲0,編程中一般使用RESET進行復位,如將 0010 1001的第八位復位,復位後即爲 0010 1000。 |
$a&$b,And(按位與)將把$a和$b中都爲1的位設爲1
$a | $b,Or(按位或)將把$a或者$b中爲1的位設爲1
$a ^ $b,Xor(按位異或)將把$a和$b中不一樣的位設爲1
~$a,Not(按位非)將$a中爲0的位設爲1,反之亦然
$a << $b,將$a中的位向左移動$b次(每一次移動都表示」乘以2「)
$a >> $b,將$a中的位向右移動$b次(每一次移動都表示」除以2「)
注意:在32位系統上不要右移超過32位。不要在結果可能超過32位的狀況下左移。
其實這一段我不懂
PHP支持一個執行運算符,反引號``。這不是單引號(普通鍵盤上,大鍵盤數字區域最左邊前面一個標有波浪號~和反引號的鍵`),PHP嘗試將執行運算符(反引號)中的內容做爲外殼命令來執行,並將其輸出信息返回(例如,能夠賦給一個變量而不是簡單的丟到標準輸出,使用反引號運算符的效果與函數shell_exec()相同)。這個一般用來執行操做系統命令。
PHP支持一個錯誤控制運算符@。當@放在一個PHP表達式以前,該表達式可能產生的任何錯誤信息都會被忽略掉。
@運算符只對表達式有效。例如,能夠放在變量、函數和include()調用、常量等以前,而不可以放在函數或類的定義前,也不能用於條件結構前。
錯誤控制符一般用於忽略腳本中無關緊要的錯誤信息,好比打開某些網站的時候,就發現頁面頂部打印出一些莫名其妙的腳本警告信息,實質上這些錯誤並不影響腳本運行,但有了這些警告信息就會影響頁面美觀,這時候就該使用錯誤控制運算符。
變量、常量、各類運算符等組成了表達式,表達式用於表達一個計算過程。
表達式最基本的形式是變量和常量。 在我理解表達式就是用來表達一個東西的玩意。
一般所說的語句是指一些表達式的組合,可以完成一件事情,才叫語句。
註釋有三種:
/* */ 中間不能夠嵌套。快捷鍵爲shift+ctrl+/
# 單行註釋
// 單行註釋