PHP程序設(shè)計(jì)基礎(chǔ)(微課版)(第2版)課件 8.PHP運(yùn)算符_第1頁(yè)
PHP程序設(shè)計(jì)基礎(chǔ)(微課版)(第2版)課件 8.PHP運(yùn)算符_第2頁(yè)
PHP程序設(shè)計(jì)基礎(chǔ)(微課版)(第2版)課件 8.PHP運(yùn)算符_第3頁(yè)
PHP程序設(shè)計(jì)基礎(chǔ)(微課版)(第2版)課件 8.PHP運(yùn)算符_第4頁(yè)
PHP程序設(shè)計(jì)基礎(chǔ)(微課版)(第2版)課件 8.PHP運(yùn)算符_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

2.6運(yùn)算符陳學(xué)平016運(yùn)算符6運(yùn)算符一個(gè)復(fù)雜的PHP程序往往是由大量的表達(dá)式所構(gòu)成的,而運(yùn)算符則是表達(dá)式的核心,也稱作操作符。只有掌握了PHP表達(dá)式和運(yùn)算符的用法,才能夠更好地使用PHP語(yǔ)言進(jìn)行開(kāi)發(fā)設(shè)計(jì)。PHP中常用的運(yùn)算符包括算術(shù)運(yùn)算符、賦值運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符、字符串運(yùn)算符和數(shù)組運(yùn)算符,下面將分別介紹。6.1算術(shù)運(yùn)算符算術(shù)運(yùn)算符號(hào),就是用來(lái)處理四則運(yùn)算的符號(hào),這是最簡(jiǎn)單,也最常用的符號(hào),尤其是數(shù)字的處理,幾乎都會(huì)使用到算術(shù)運(yùn)算符,其中取模就是取余數(shù)的意思。PHP提供的算術(shù)運(yùn)算符及其作用如表2-11所示。表2-11算術(shù)運(yùn)算符實(shí)例36使用算術(shù)運(yùn)算符實(shí)例代碼如下:<?php$a=8;$b=3;echo$a+$b."<br>";echo$a-$b."<br>";echo$a*$b."<br>";echo$a/$b."<br>";echo$a%$b;?>在瀏覽器中輸出為:115242.6666666666726.2遞增/遞減運(yùn)算符遞增/遞減運(yùn)算符是可以對(duì)操作系統(tǒng)(可以是數(shù)字或字符)進(jìn)行遞增、遞減操作的一種運(yùn)算符。PHP提供的遞增/遞減運(yùn)算符及其作用如表2-12所示。表2-12遞增/遞減運(yùn)算符及其作用實(shí)例37使用遞增/遞減運(yùn)算符實(shí)例代碼如下:<?php$a=8;$b=8;$c=3;$d=3;echo$a++."<br>";echo++$b."<br>";echo$c--."<br>";echo--$d;?>6.3賦值運(yùn)算符基本的賦值運(yùn)算符是“=”。它并不是常規(guī)的“等于”號(hào)。它實(shí)際上意味著把右邊表達(dá)式的值賦給左邊的變量。如$a=3,并不是$a等于3,而是將整數(shù)賦給$a。然而在PHP中不僅僅只有這一種賦值運(yùn)算符,PHP提供的賦值運(yùn)算符及其用法如表2-13所示。表2-13賦值運(yùn)算符實(shí)例38使用賦值運(yùn)算符實(shí)例代碼如下:<?php$a=6;$b=8;$c=7;$d=5;$e=4;6.3賦值運(yùn)算符$f="大家";echo($a+=3)."<br>";echo($b-=3)."<br>";echo($c*=3)."<br>";echo($d/=3)."<br>";echo($e%=3)."<br>";echo($f.="好!");?>6.4比較運(yùn)算符比較運(yùn)算符也稱條件運(yùn)算符或關(guān)系運(yùn)算符,用于比較兩個(gè)數(shù)據(jù)的值并返回一個(gè)布爾類型的結(jié)果。PHP提供的比較運(yùn)算符及其用法如表2-14所示。表2-14比較運(yùn)算符實(shí)例39使用比較運(yùn)算符實(shí)例代碼如下:<?php$a=5;$b=3;$c="5";$d=5.0;6.4比較運(yùn)算符echovar_dump($a==$b)."<br>";echovar_dump($c==$d)."<br>";echovar_dump($a===$c)."<br>";echovar_dump($a!=$b)."<br>";echovar_dump($a!=$c)."<br>";echovar_dump($a!==$d)."<br>";echovar_dump($a<$b)."<br>";echovar_dump($a>$b)."<br>";echovar_dump($a<=$b)."<br>";echovar_dump($a>=$b);?>6.5邏輯運(yùn)算符邏輯運(yùn)算符用于處理邏輯運(yùn)算操作,只能操作布爾型值。PHP提供的邏輯運(yùn)算符及其用法如表2-15所示。表2-15邏輯運(yùn)算符實(shí)例40使用邏輯運(yùn)算符實(shí)例代碼如下:<?php$a=true;$b=true;$c=false;echovar_dump($a&&$b)."<br>";6.5邏輯運(yùn)算符echovar_dump($a&&$b)."<br>";echovar_dump($a&&$c)."<br>";echovar_dump($a||$b)."<br>";echovar_dump($a||$c)."<br>";echovar_dump($axor$b)."<br>";echovar_dump($axor$c)."<br>";echovar_dump(!$a)."<br>";echovar_dump(!$c);?>6.6位運(yùn)算符位運(yùn)算符主要應(yīng)用于整型數(shù)據(jù)的運(yùn)算過(guò)程。當(dāng)表達(dá)式包含位運(yùn)算符時(shí),運(yùn)算時(shí)會(huì)先將各個(gè)整型運(yùn)算數(shù)轉(zhuǎn)換為相應(yīng)的二進(jìn)制格式,然后再進(jìn)行位運(yùn)算。PHP提供的位運(yùn)算符及其用法如表2-16所示。表2-16位運(yùn)算符號(hào)實(shí)例41使用位運(yùn)算符實(shí)例代碼如下:<?php$a=7;//二進(jìn)制為00000111$b=2;//二進(jìn)制為000000106.6位運(yùn)算符echo($a&$b)."<br>";//與操作后為00000010,轉(zhuǎn)十進(jìn)制為2echo($a|$b)."<br>";//或操作后為00000111,轉(zhuǎn)十進(jìn)制為7echo($a^$b)."<br>";//異或操作后為00000101,轉(zhuǎn)十進(jìn)制為5

echo(~$a)."<br>";//非操作后為11111000,轉(zhuǎn)十進(jìn)制為-8echo($a<<$b)."<br>";//向左位移2個(gè)單位后為00011100,轉(zhuǎn)十進(jìn)制為28echo($a>>$b)."<br>";//向右位移2個(gè)單位后為00000001,轉(zhuǎn)十進(jìn)制為1?>6.6位運(yùn)算符其他都好理解,對(duì)于非操作后為11111000,轉(zhuǎn)十進(jìn)制為什么-8,做一下解釋。計(jì)算機(jī)中一般32位字長(zhǎng),為了方便,如果按8位說(shuō)明(8的十進(jìn)制為1000,其32位00000000000000000000000000001000,其8位為00001000)。當(dāng)指定一個(gè)數(shù)是無(wú)符號(hào)類型時(shí),那么其最高位的1或0,和其它位一樣,用來(lái)表示該數(shù)的大小。當(dāng)指定一個(gè)數(shù)是有符號(hào)類型時(shí),最高數(shù)稱為“符號(hào)位”。為1時(shí),表示該數(shù)為負(fù)值,為0時(shí)表示為正值。負(fù)數(shù)如何轉(zhuǎn)換成二進(jìn)制?負(fù)數(shù)轉(zhuǎn)為二進(jìn)制的步驟為:第一步,求出其正數(shù)的二進(jìn)制,如-8的正數(shù)(8)的二進(jìn)制為00001000。第二步,求出其反碼,即1變0,0變1,00001000的反碼是11110111。6.6位運(yùn)算符第三步,得出其補(bǔ)碼,即反碼加1,要記住逢2進(jìn)1,11110111的補(bǔ)碼為11111000,因此-8的二進(jìn)制為11111000。雖然是8位,而實(shí)際上是32位,前24位全都是1,上面講的8的二進(jìn)制00001000前24位都是0。為什么11111000是-8而不是248?將248轉(zhuǎn)為二進(jìn)制是11111000,但其前24位都為0,而-8的二進(jìn)制前24位都為1。如果單從8位來(lái)講,248的二進(jìn)制是無(wú)符號(hào)類型,它沒(méi)有負(fù)數(shù),取值范圍為0~255(00000000~11111111)共個(gè)數(shù),而-8的二進(jìn)制是有符號(hào)類型,取值范圍為-128~127(負(fù)數(shù)10000000~11111111,00000000,正數(shù)00000001~01111111)共256個(gè)數(shù)。6.6位運(yùn)算符32位操作系統(tǒng)中使用位運(yùn)算符編程的時(shí)候,右移不要超過(guò)32位,左移結(jié)果不要超過(guò)32位,否則會(huì)發(fā)生數(shù)據(jù)溢出。01如果在開(kāi)發(fā)過(guò)程中一定要使用位運(yùn)算符,則建議開(kāi)發(fā)人員保證所有參與位運(yùn)算的數(shù)據(jù)都為整型數(shù)據(jù),否則運(yùn)算結(jié)果可能產(chǎn)生錯(cuò)誤。02位運(yùn)算符也可用于包含字符串的表達(dá)式,但是這種情況很少見(jiàn)。036.7字符串運(yùn)算符字符串運(yùn)算符也稱連接運(yùn)算符,用于處理字符串的相關(guān)操作。在PHP中提供了兩個(gè)字符串運(yùn)算符。第一個(gè)是連接運(yùn)算符(“.”),它返回其左右參數(shù)連接后的字符串。第二個(gè)是連接賦值運(yùn)算符(“.=”),它將右邊參數(shù)附加到左邊的參數(shù)后。實(shí)例42使用字符串運(yùn)算符實(shí)例代碼如下:<?php$a="今天";$b=$a."是星期一,";echo$b."<br>";$c="明天";$c.="是星期二。";echo($c);?>6.8數(shù)組運(yùn)算符6.8數(shù)組運(yùn)算符<?php$a=array("1"=>3,"2"=>5);$b=array("color"=>"red","shape"=>"round");$c=array("1"=>"3","2"=>"5");echovar_dump($a+$b)."<br>";echovar_dump($a==$c)."<br>";echovar_dump($a===$c)."<br>";echovar_dump($a!=$b)."<br>";echovar_dump($a!==$c);?>6.9錯(cuò)誤抑制運(yùn)算符PHP表達(dá)式產(chǎn)生錯(cuò)誤而如果不想將錯(cuò)誤信息顯示在頁(yè)面上時(shí),可使用錯(cuò)誤抑制運(yùn)算符。當(dāng)表達(dá)式的前面被加上“@”這個(gè)運(yùn)算符以后,該表達(dá)式可能產(chǎn)生的任何錯(cuò)誤信息都會(huì)被忽略。實(shí)例44使用錯(cuò)誤抑制運(yùn)算符實(shí)例代碼如下:<?php$a=5;$b=0;echo($a/$b);?>6.9錯(cuò)誤抑制運(yùn)算符在瀏覽器中輸出為:Warning:DivisionbyzeroinC:\phpStudy\WWW\2\44.PHPonline4上面的C:\phpStudy\WWW\是網(wǎng)站的目錄路徑。瀏覽器出現(xiàn)了錯(cuò)誤提示,如果將在($a/$b)前面加上“@”這個(gè)符號(hào),則再次運(yùn)行這個(gè)程序的時(shí)候,就不會(huì)得到任何錯(cuò)誤信息。<?php$a=5;$b=0;echo@($a/$b);6.9錯(cuò)誤抑制運(yùn)算符?>在程序的開(kāi)發(fā)調(diào)試階段,不應(yīng)該使用錯(cuò)誤抑制運(yùn)算符,以便能夠快速地發(fā)現(xiàn)錯(cuò)誤信息。而在程序的發(fā)布階段,可加上錯(cuò)誤抑制運(yùn)算符,以防止程序出現(xiàn)不友好的錯(cuò)誤信息。6.10類型運(yùn)算符實(shí)例45應(yīng)用類型運(yùn)算符實(shí)例代碼如下:<?phpclassA{} //定義一個(gè)類A$a=newA(); //實(shí)例化一個(gè)類A的對(duì)象avar_dump($ainstanceofA); //使用類型運(yùn)算符判斷a是否為類A的實(shí)例?>6.11執(zhí)行運(yùn)算符執(zhí)行運(yùn)算符使用“`”(鍵盤(pán)數(shù)字1左邊的按鍵)符號(hào)。使用了這個(gè)運(yùn)算符以后,該運(yùn)算符內(nèi)的字符串將會(huì)被當(dāng)做DOS命令行來(lái)處理。實(shí)例46應(yīng)用執(zhí)行運(yùn)算符實(shí)例代碼如下:<?php$a=`dirc:\\AppServ`;echo$a;?>在瀏覽器中輸出為:驅(qū)動(dòng)器C中的卷是BOOTCAMP卷的序列號(hào)是3424-B308c:\的目錄6.12三元運(yùn)算符三元運(yùn)算符的功能與“if....else”流程語(yǔ)句一致,它在一行中書(shū)寫(xiě),代碼精練、執(zhí)行效率高。在PHP程序中恰當(dāng)?shù)厥褂萌\(yùn)算符能夠讓腳本更為簡(jiǎn)潔、高效。代碼的格式如下:表達(dá)式1?表達(dá)式2:表達(dá)式3如果表達(dá)式1的值為true則計(jì)算表達(dá)式2,否則計(jì)算表達(dá)式3。實(shí)例47應(yīng)用判斷運(yùn)算符實(shí)例代碼如下:<?php$a=90;$b=$a>80?'成功':'失敗';echo$b;?>6.12三元運(yùn)算符在瀏覽器中輸出為:成功應(yīng)該注意的是:在使用三元運(yùn)算符時(shí),建議使用print語(yǔ)句替換echo語(yǔ)句,經(jīng)測(cè)試,PHP4環(huán)境下,在使用三元運(yùn)算時(shí)若用echo語(yǔ)句打印

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論