您好,登錄后才能下訂單哦!
這篇文章主要介紹如何使用PHP自定義函數(shù),文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
PHP 中除了已經(jīng)給我們提供了很多功能強(qiáng)大的系統(tǒng)函數(shù),但這遠(yuǎn)遠(yuǎn)滿足不了需要,程序員可以根據(jù)開發(fā)的需要來創(chuàng)建一個(gè)自定義函數(shù)。函數(shù)是通過調(diào)用函數(shù)來執(zhí)行的,自定義函數(shù)的基本語法格式示例如下:
function 函數(shù)名 (參數(shù)1, 參數(shù)2, ..., 參數(shù)n){ 函數(shù)中的功能體; return 返回值; }
上述的語法格式中,有以下特點(diǎn):
每個(gè)函數(shù)的第一行都是由聲明函數(shù)的關(guān)鍵字 function
、函數(shù)名和參數(shù)列表三部分組成;
每個(gè)自定義函數(shù)都必須以 function 開始,也就是使用function聲明;
函數(shù)可以有return返回值也可以沒有返回值;
函數(shù)不能被定義兩次,即函數(shù)不能被重載;
聲明函數(shù)時(shí)函數(shù)名后面的小括號(hào)“()”也是要必須有的,在小括號(hào)中包含了一組參數(shù)列表,參數(shù)就是聲明的變量,然后在調(diào)用函數(shù)時(shí)可以將變量傳遞給函數(shù)。參數(shù)列表可以為空,也可以有一個(gè)或多個(gè)參數(shù),多個(gè)參數(shù)之間使用逗號(hào)分隔;
函數(shù)創(chuàng)建了之后,和系統(tǒng)函數(shù)一樣,你可以再頁面的任何位置調(diào)用函數(shù)。
<?php function a(){ echo '這是一個(gè)函數(shù)示例'; } a(); a(); a(); ?>
輸出結(jié)果:
函數(shù)名與變量命名規(guī)則一樣,但是不同的是:函數(shù)名不區(qū)分大小寫。
<?php function ABC(){ echo '函數(shù)名不區(qū)分大小寫<br />'; } aBC(); AbC(); ABc(); ?>
輸出結(jié)果:
函數(shù)在定義之前還是在定義之后都可以調(diào)用。也就是函數(shù)可以任意位置調(diào)用。
<?php a(); function a(){ $b = '好好學(xué)習(xí)'; $b .= '天天向上'; echo $b; } a(); ?>
輸出結(jié)果:
函數(shù)動(dòng)作執(zhí)行模塊中若有return,那在return 后面的代碼不會(huì)執(zhí)行。
<?php function a(){ echo "好好學(xué)習(xí)"; return; echo "天天向上"; } a(); ?>
輸出結(jié)果:
函數(shù)執(zhí)行完成后,return 可以把函數(shù)體內(nèi)的值,帶出函數(shù)體外。
<?php function a(){ $b = 1; $c = 9; $d = $b + $c; //將$d的結(jié)果進(jìn)行返回 return $d; } //調(diào)用a()這個(gè)函數(shù),$b和$c相加的$d就會(huì)返回回來給到變量$e $e = a(); //輸出$e的結(jié)果 echo $e; ?>
輸出結(jié)果:
函數(shù)體的變量與函數(shù)體外的變量沒有關(guān)系
<?php //先在函數(shù)體前定義變量$a的值為10 $a = 10; function demo( $a ){ //形參帶入了函數(shù)體內(nèi),函數(shù)體內(nèi)變量$a 改為了 50 $a = 50; echo $a + $a; } //將函數(shù)體外的變量$a,傳入變量的參數(shù)處(實(shí)際傳入的參數(shù),實(shí)參),顯示出的結(jié)果為100 demo($a); //此處$hello的值輸出,依然為10 echo $a; ?>
函數(shù)不能重載
<?php function a(){ } function a(){ } ?>
輸出結(jié)果會(huì)報(bào)錯(cuò),函數(shù)不能重載。
以上是“如何使用PHP自定義函數(shù)”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。