1、函數的聲明
2、變量的范圍
局部變量: 在函數中聲明的變量就是局部變量, 只能在自己的函數內部使用。
全局變量: 在函數外聲明的變量就是全局變量, 在變量聲明以後直到整個腳本結束前都可以使用, 包括在函數中和 { } 中都可使用。
2.1 知識點: PHP的變量分不出是聲明還是使用
'; } demo($a); echo $a; // 結果: 20, 10 // PHP的變量分不出 $a 是聲明還是使用 ?>2.2 知識點: 函數中使用全局變量必須使用global關鍵字, 在聲明global之後的變量才是全局的變量
"; } function test() { global $a; $a += 5; echo $a . "test
"; } echo $a . " ----
"; // 10 ---- demo(); // 20 demo echo $a . " !!!!
"; // 20 !!!! demo(); // 30 demo echo $a . " @@@@
"; // 30 @@@@ test(); // 35 test echo $a . " ####
"; // 35 #### ?>
靜態變量: 只能聲明在函數中(類中), 不能在全局聲明, 變量前使用static關鍵字修飾。
2.3 知識點: 靜態變量在靜態代碼塊中存儲, 它的值可以一個函數多次調用之間共享, 但只在第一次調用函數時聲明到內存
以後再調用時就不再聲明而直接使用(和Java類似)。
"; } test(); // 1 test(); // 2 test(); // 3 ?>
3、變量函數
其實這個和JS又很類似, 例如: 定義$var = hello, 下次使用$var()時就將尋找與變量值同名的函數hello()
"; // 91 ?>
4、系統函數
4.1 常規函數4.3 帶有&參數的函數, 表示引用賦值, 這個參數不能傳值, 只能傳一個變量,然後函數將變量的值改變,
我們在使用這個變量時,值也是變化的(和Java中傳引用又是一樣的)
bool arsort (array &array [, int sort_flags])"; } demo(8,9); ?>4.5 帶有...的參數函數, ...表示可以傳任意多個參數
4.6 回調函數 帶有callback, 就是調用這個函數時需要我們傳一個函數進來(函數名,函數名字串)
array array_filter (array input [, callback callback])
2 [3] => 4 [5] => 6 [7] => 8 ) ?>