前言php
在上一章中,咱們初步瞭解了PHP的網頁基礎和PHP的入門基礎,今天繼續給你們分享更多有關PHP的知識。 html
理論知識看起來可能比較枯燥一些,可是咱們的實踐(敲代碼)畢竟離不開它。安全
只有理論與實踐相結合,才能夠用最少的代碼實現更多的功能。ide
***本章關鍵字:運算符;可變變量;取址符號;分支與循環;流程控制語句goto。函數
下面,咱們來看了解一下PHP中的運算符及更多PHP知識基礎:性能
一、算術運算符:+ - * / % ++ --ui
二、賦值運算符:= += -= *= /= %= .=(鏈接字符串)spa
三、比較運算符:> < >= <= == === <>、!= !==命令行
==:要求值相等,而不須要數據類型相等code
===:要求值和數據類型,必須相等
!=:只比較值,值相等爲false
!==:比較值和類型,值和類型都相等爲false
四、邏輯運算符:and/&& or/|| not/! xor
&&和||進行運算的時候,會發生短路:
當左側可以判斷出結果的時候,便再也不執行右側!!(&&左側爲假時,結果即爲假;||左側爲真時,結果即爲真)
xor:邏輯異或。兩邊只有一個對的,結果爲true;兩邊同爲true或同爲false,結果都爲false。
五、位運算符:
將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(※※※)
六、其餘運算符:
表達式1?表達式2:表達式3:
表達式1成立執行表達式2,不然執行表達式3
``:調用系統dos環境下的命令行並執行。可是因爲安全性以及跨平臺性,咱們並不支持使用;eg:`ipconfig`
@:錯誤信息控制符:能夠臨時屏蔽到一些小的錯誤信息。可是不提倡使用!
在一個變量名前面,再加一個$符號。便可將第一個變量的值,做爲新變量的名字。
$hello = "hello1";
$$hello = "world";//$hello1
$$$hello = "Jredu";//$world
&:變量名前加&能夠取出變量在內存中的地址,並能夠賦給另外一個變量。
$num2 = &$num1;//取出num1的地址給num2,至關於咱們說的引用數據類型。num2和num1的值將同時改變。
一、if中的判斷條件
詳見請點擊「好奇就點我吖!」上一章中的第二部分【PHP入門基礎】,在這裏,博主就不一一介紹了……
二、elseif
PHP中,elseif語句能夠連寫,也能夠空格分隔;
例如:
else if() √
elseif() √
三、switch
PHP中,switch結構的判斷,使用==判斷,而非===
PHP中,continue能夠用於switch結構,做用與break相同。
php中,continue和break能夠後接數字,表示跳過幾層循環或switch;
eg:break 3;表示終止3層循環
四、do-while循環
do-while循環的最後必需要加分號。
do{
}while();
五、流程控制語句
一、break:終止本層循環;break後面可接數字,表示終止幾層循環。break 3,終止3層循環。
二、continue:跳過本次循環;continue後面也可接數字,表示跳過幾層循環
三、return:終止當前函數,並返回值(若是有的話),可是通常只在函數中使用,腳本中不建議使用return;
四、exit(mixed 結束語)/die(mixed 結束語)函數:直接結束當前PHP腳本!!
若是有參數傳入,則先打印出結束語,而後結束當前腳本。
一、用法:
定義一個跳轉的錨點,"標識符"-->"jr:"
在任意位置,設置goto語句,跳轉到指定錨點:"goto jr;"
二、做用:
遇到goto語句時,直接跳轉到設置的標識符位置。
三、用於實現分支。
注意:goto語句只是讓當前的程序控制流跳轉到指定錨點,可是並不負責往下執行幾行代碼。
即,從錨點往下全部代碼會依次執行。若是實現多路分支,需配合goto語句,跳過其餘分支。(詳見案例以下)
四、goto實現循環:
詳見案例。可是,goto中,跳出循環不能使用break。
五、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跳出循環,注意不能使用break 27 } 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基礎入門】會持續更新,感謝你們的關注~~~