| 適合php初學者的一些基礎知識,也可算是一些經驗積累吧,有需要的朋友,可以參考下。 PHP基礎 一、初識PHPPHP是與HTML混合使用的嵌入式語言。1、PHP標記預設標記 短標記,需在php.ini中將short_open_tag選項開啟 短標記和其他標記不提倡使用 2、關鍵字不區分大小寫,使用者自訂的類名和函數名不區分大小寫,變數名區分大小寫 3、輸出boolean print(參數) 返回布爾值void echo(參數) 無傳回值echo的效率要高一點 二、資料類型1、比較兩個浮點數的通常方法是先移動若干小數位,然後轉換為整型資料再進行比較。 2、雙引號做分隔字元的字串支援變數名解析,單引號做分隔字元的字串不支援變數名解析。$name="張三";"$name"=>張三 || '$name'=>$name || "$name先生"=>空 || "{$name}先生"=>張三先生 || "${name}先生"=>張三先生 3、字串定義的方式:單引號,雙引號和heredoc(<< 4、物件類型必須顯式的進行聲明。類用關鍵字class定義,使用關鍵字new產生這個類的執行個體,使用->符號類訪問類中的屬性和方法class car{public $cololr;function beep(){}}$mycar = new car; $mycar->color='red'; $mycar->beep(); 5、PHP是一種弱語言類型,變數的類型會根據賦予的值自行確定,而且往往在變數聲明的同時進行變數初值的賦值。 6、資料類型強制轉換時,只須將需要的類型名寫在變數前的括弧內即可。 三、常量和變數 1、定義常量 define("常量名",運算式或值) 常量名建議全大寫,但不是必需的使用常量 直接使用定義的常量名,無須在常量名前加"$"預定義常量:_FILE_當前PHP程式檔案名稱 _LINE_當前PHP程式所在的行數(在哪指哪) 2、變數不需要顯式的聲明,在對變數賦初值時就對變數進行了聲明。如果變數沒有被設定初值,則其初值即為NULL。 3、變數的賦值:傳值賦值和引用賦值。如$a=&$b; 即b原來指向了一個儲存位置,引用賦值後,a也指向了這個儲存位置,這時,a或b的銷毀都不會對對方造成任何影響,但是如果其中一個的值改變了,則另一個也會作出相同的改變。 4、訪問預定義變數之使用超全域變數,總共9個超全域變數 5、局部變數:在函數內定義的變數 只能在函數內使用全域變數:在函數外定義的變數 預設只能在函數外使用要想在函數內使用全域變數,需要在函數內將變數用global聲明,或者使用超全域變數數組&GLOBALS["變數名"]在PHP中,只有函數能提供局部範圍。超全域變數$GLOBALS包含了全部的變數靜態變數的特點:只有在第一次被調用時進行初始化,函數結束後不銷毀,並且下次使用時,該變數還保留原來的值。靜態變數只能在函數內定義和使用。可變變數:將變數的名字也作為一個變數來使用。$a=b;$b=c;$$a=$b=c;外部變數:使用GET方式能傳遞的資料最大為256位元組,使用POST最大為2MB 四、流程式控制制(僅寫與java等其他語言的不同)1、互動格式(冒號文法) 不建議使用,經典的比較直觀 2、foreach():該文法是專門為數組設計的第一種格式foreach(target_array as $value) statement第二種格式foreach(target_array as $key=>$value) statement 3、break 數字:要跳出的結構的層數contiue 數字:要跳出的結構的層數 4、exit語句可以結束當前整個指令碼的執行,通常用於錯誤檢查。exit; exit("錯誤原因");die()是exit的別名 $conn=mysql_connect("localhost","root","") or die("無法串連到MySQL伺服器"); 五、數組1、關聯陣列與數字索引數組唯一的區別在於索引的類型。 2、數字索引數組初始化:直接為數組元素賦值array()函數如果數組不存在,那麼為數組元素賦值的同時即可建立該數組如果數組元素是按順序排列的數字,則在對數組進行初始化時,可以使用range()函數range()有3個參數,第一個參數指定初始值,第二個參數指定終止值,第三個參數可選,用於指定步長 3、關聯陣列初始化:直接為數組元素賦值array()函數 4、與數組相關的運算子+ 聯合 $a+$b 將$附件到$a之後,但是任何索引值衝突的元素將不會被添加== 等於 $a==$b 如果$a和$b包含相同元素,返回true(索引值和元素必須都相同) 除了順序,其他必須完全一樣!= <> 不等於=== 恒等 如果$a和$b包含相同順序的相同元素,返回true(索引值和元素必須都相同) 必須完全一模一樣!== 不恒等 5、數組的排序boolean sort() 按數字和字母順序排列 排列後會賦予新的索引值,原有索引值被刪除void asort()按升序對數組進行排序 排列後保留原來的索引關係integer ksort() 按索引值升序進行排列usort(數組,方法名)按使用者自訂方法進行排序array_multisort() 一次對多個數組進行排序natsort() 按自然順序排序,排序後保留原有的索引關係natcasesort() 自然排序,不區分大小寫 6、數組的反向排序rsort() 對數組元素按降序排列arsort()krsort() 7、對數組進行重新排序boolean shuffle() 對數組進行隨機排列array array_reverse() 將數組中的元素逆置array array_flip() 將數組中的索引與其元素值兌換 8、數組的遍曆current() 擷取數組中當前指標所指的元素值next()將數組的指標向後移動一位,返回移動後指標所指向的元素的元素值prev()將數組的指標向前移動一位,返回移動後指標所指向的元素的元素值reset()指標設定回數組的起始位置end() 將指標移動到數組的最後一個元素處each()返回數組中當前指標所指向的“索引/元素值”對,並將數組指標向後移動一位返回一個包含4個元素的數組,且該數組的索引分別為0,key,1,valuekey() 返回數組當前指標所指向的索引值array_walk()以相同的方式對數組中的每一個元素進行處理array_reduce() 將自訂函數依次應用於數組的每個元素9、其他的數組操作函數list()從一個數組中一次提取多個值,並同時賦值給多個變數count()/sizeof()計算數組中元素的個數 1 2 3 4 下一頁 尾頁 |