PHP函數

1.明確函數的作用,和用途

2.函數分類  ,  系統(內部),用戶自定義

3.函數的  調用格式  :函數名稱(參數1,參數2,參數3.....)

函數中的參數可以是  php支持的  任何類型

echo strlen("zppxphp");

echo "<br />";

echo phpinfo();

echo "<br />";

終止腳本的運行

die($str)

exit($str);

只接受一個參數

當傳遞的值爲0 時執行

exit("你好");

die("你好");

echo "123";//不會輸出

$fp = fopen("index_1.php","r") or die("不能打開文件");

echo $fp;

用戶自定義函數

格式爲

function 函數名稱(參數,參數)  {

函數體

}

通過return 返回函數處理的結果

如:

無參數的函數

function text_fun(){

return "測試函數的返回值";

}

使用這個函數,直接用函數名稱text_fun(),一定記得要加括號

echo text_fun();

深圳市中鵬培訓內部資料  函數  之  PHP開發摘要  饒建平:330979060

有一個參數的函數

function square($x){

return ++$x;

}

$x = 5;

echo square($x);

有2個參數的函數,其中最後一個參數有默認值

function errorMessage($str,$type = 0){

return $str;

}

$str = "這是個  錯誤的信息顯示";

echo errorMessage($str);

通過上面的例子,我們來看下函數的命名規則

函數的  命名規則

*1.命名規則比較寬鬆,可以支持大小寫  ,但是都是一樣的  如  FUN(),fun()時一樣的

*2.在php中變量大小寫是不一樣的  ,$FUN與$fun是不一樣的

*3.函數的參數沒有  限制

*4.函數的命名理論可以是中文,但不建議

function FUN(){

return "函數名稱的  大小寫";

}

echo fun();//FUN();

function 中鵬培訓(){

return "中鵬培訓w";

}

echo 中鵬培訓();

函數的  作用域  ,看下面的  例子

變量只在函數內部作用

function fun_a(){

$var = 2;

}

$var = 3;

fun_a();

echo $var; //結果爲3

深圳市中鵬培訓內部資料  函數  之  PHP開發摘要  饒建平:330979060

函數內部影響到外面的  變量

function fun_b(){

global $var;

$var = 2 ;

}

$var = 3;

fun_b();

echo $var;

function fun_c(){

global $var;

return $var;

}

$var = 2;

echo fun_c();

函數作用域的注意事項

*1.函數內部申明的變量,從函數聲明開始到函數的尾部一直有效

*2.函數外部聲明的變量  ,從聲明開始到文件的  結束

*3.使用require,include 不影響作用範圍

*4.如果變量在函數內部,只在函數作用域有效,如果不在,具有全局作用

*5.使用GLOBAL,GLOBALS[]數組可以聲明全局

*6.函數是全局的  ,在函數內部定義的另一個函數,在任何地方都是有效的

*7.可以使用unset刪除一個變量

從函數返回值  return

//返回引用的值

解釋  返回這個變量的地址做這個  變量的代替  ,允許修改這個調用的  作用域,返回一個引

用的變量  ,

需要定義個函數去替換&

function &get_var($name){

return $GLOBALS[$name];

}

$str = "100";

$value = &get_var("str");

print $value;

function get_var_a(&$name){

$name = $name + $name ;

深圳市中鵬培訓內部資料  函數  之  PHP開發摘要  饒建平:330979060

}

function get_var_b($name){

$name = $name + $name ;

}

$str = "100";

get_var_a($str);

echo $str;

function genPassword($min = 5,$max = 8){

$varstring = "abcdefghijklmnopqrstuvwxyz123456789";

$max_char = strlen($varstring)-1;

$length = mt_rand($min,$max);

for($i=0;$i<=$length;$i++){

$password .= $varstring[mt_rand(0,$max_char)];

}

return $password;

}

function get_num_fun($str,$str1,$str2,$str3=null){

//return func_num_args();//函數的參數個數

//return func_get_arg(2);//返回函數的參數值

//print_r(func_get_args());

}

echo get_num_fun(1,2,3,4);

靜態變量  不會再函數外出現  ,通常變量時在每次使用時重新創建,而靜態變量不會

function conutStatic($msg){

static $num;

//global $num;

$num++;

return "<br />靜態變量num=".$num." ".$msg;

}

echo conutStatic("第1次");

echo conutStatic("第2次");

echo conutStatic("第3次");

echo conutStatic("第4次");

echo $num;//測試函數的  靜態和全局

計算

給一個員工發工資,你要發給他100元、50元、10元、5元、  2元、  1元的錢,假如要

發給他1789元,寫一個程序,打印出要發給他100元、50元、10元、5元、  2元、  1元

深圳市中鵬培訓內部資料  函數  之  PHP開發摘要  饒建平:330979060

各是多少張?


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章