PHP基礎語法:
##php變數必須以」$」開頭,例如:$name、$age
不能以數字開頭,最後依照駝峰命名法
寫在」」引號中的變數最好用{ } 括起來,以免出現末端有字元不解析的情況
二、php資料型別
標量資料型別:字串型、整數、浮點數型、布林型
複合資料型別:陣列、物件
特殊資料型態:資源、NULL
1、整數
取值範圍:-21億~21億
2、浮點型
#取值範圍:-1.7E-308~1.7E 308
由於浮點數不能轉換成精確的二進制,所以有時在運輸時會出現錯誤,例如:(0.7 0.1)*10==8 結果為false
#3、字串型
3-1、雙引號
##雙引號解析變量的值
3-2、單引號
3-3、長字串
$Str = ….填入字串內容heredoc ; 結尾「heredoc」必須另起一行,分號結束3-4、資源類型
對第三方外掛程式等的操作,如呼叫mysql資料庫等,第三方的內容稱為資源3-5、布林型
#只有true或false兩種型別值3-6、NULL型
如果變數不存在,回傳NULL,空型只有一個值,就是NULL3-7、陣列
a、陣列的分類
1、索引陣列
陣列的下標是從0開始的正整數,這樣的陣列稱為「索引數組」$arr=array(10,20,30,40);$arr[0]=10;
陣列的下標是字串,這樣的陣列稱為「關聯陣列」$arr=array(“name”=>”Tabb ”,”sex”=>”gender”,”age”=>”22”);
由於關聯數組沒有整數型下標,所以不適合使用for迴圈來遍歷
#3、混合陣列
陣列下標既有整數型,也有字串,這樣的陣列稱為「混合陣列」
$arr = array("name" => "tabb", "age" => "20", "tom", 20);
echo $arr[0] 輸出結果為「tom」;說明整數型下標是從”tom”開始計算的
b、數組的創建
1、使用array()函數建立數組
透過「=>」重載符號給陣列元素指定下標
#如果陣列元素沒有指定下標,其下標為,目前最大索引1,範例:
$arr=array(20=>”tabb”,2=>”28”,20,”tom”) 其中”20”的索引為21,如果都是字元下標,那麼沒有指定下標的元素,索引從0開始
使用array建立陣列:
$arr = array([$key=>]$value,[$key=>]$ value,…);
2、使用[]建立陣列
#$arr[“key”]=$value
不像js,可以不用先宣告一個空數組,如果指定的數組不存在,會自動創建數組
#[ ] 中括號內容為空時,創建數組
$arr[ ]= 30;如果數組不存在,就會建立一個數組,並且添加第一個元素
c、多維數組
array(array(1,2,3,4),1,2,3,array(1, 2,3,4))
使用[ ]中括號可以快速建立多維數組:$arr[ ][ ][ ][ ]=10; 快速建立一個4維數組
d、陣列相關函數1、print_r()
列印關於變數的易於理解的訊息
如果給出的數組或對象,按照一定格式顯示鍵和元素
2、unset()###刪除數組元素,刪除的是數組元素的值,下標還存在,不同於js的長度不變,此處刪除元素後,數組長度發生變化#######刪除變數########3、count( )#########計算數組中的單元數目或物件中的屬性個數#############4、foreach()只能遍歷數組###### ###foreach( $arr as [$key=>]$value ){ } 如果是索引數組,[$key=>]這個內容可以不要###三、php資料型別判斷
1、var_dump()
印變數的相關訊息,可以列印多個變量,用」,」逗號隔開
2、 is_*() 一組判斷變數類型的方法,傳回一個布林值
#is_bool():判斷變數是不是布林型
is_int():判斷變數是不是整數
is_float ():判斷變數是不是浮點型
#is_numeric():判斷變數是數值型
s_string():判斷變數是不是字串型
is_array():判斷變數是不是陣列型
is_object():判斷變數是不是物件類型
is_null():判斷變數是空型
is_resource():判斷變數是不是資源型
#3、isset()
偵測變數是否設定
回傳值:如果變數存在,且不等於NULL,回傳true,否則,傳回false
4、empty()
偵測變數是否為空,例如””,0,”0”,null,array(),var $var 以及沒有任何屬性的物件都會被視為空,如果為空,回傳值TRUE
四、資料類型的轉換
(1)轉換為bool值 (bool)
$a = "0";
$result = (bool)$a;
var_dump($result) 結果為: bool(false)
這些資料轉換為bool值時為false:0、0.0、」”、”0”、array()、null
資源型別轉換為bool永遠為true
(2)轉換成整數數值 (int) (int)$name
1.如果以數值開頭的字串,則將整數部分轉換為整數數值,移除後面的字元
2.如果不是數值開頭的字串,轉換為0
3.bool值true轉換為1,false轉換為0,null轉換為0
(3)轉換為浮點數值 (float) (float)$name
1.如果以數值開頭的字串,則將數字部分轉換為數值(包含浮點部分),去除後面的字元
2.如果不是數值開頭的字串,轉換為0
3.bool值true轉換為1,false轉換為0,null轉換為0
(4)轉換為字串 (string) (string)$name
1.null、false轉換為」”,空字串
2.true轉換為字串「1」
五、運算子優先權
(1)數值運算子( 、-、/ 、*、%、 、--)
使用方法與js中的使用方法基本相同
(2)字串運算子
“.”點運算符表示字串連結符,與js中用」 號拼接字串類似
$a=”abc”;
$b=$a.100 或使用」.=”表示自己與自己連結字串:$a.=100
(3)賦值運算子(=、 =、-=、*=、/=、%=)基本上與js相同
(4)比較運算子(>、=、
範例:10= =「10px」 結果為:true;在包含數字的運算中「10px」會先轉換為數值
舉例:10===「10px」 結果為:false; 全等比較,包含資料型別
(5) 邏輯運算子(&&、||、!)基本上與js相同
(6) 三元運算子(表達式?結果1:結果2)基本上與js相同
(7) 運算子優先權
推薦影片教學:PHP影片教學
以上是php基礎語法規則梳理的詳細內容。更多資訊請關注PHP中文網其他相關文章!