函數(shù)返回值
使用return關(guān)鍵字可以返回函數(shù)值。如果在一個(gè)函數(shù)體內(nèi)調(diào)用return語句,將立即結(jié)束該函數(shù)的執(zhí)行,并將它的參數(shù)作為函數(shù)的值返回。如:
<?phpfunction square($n){ return $n * $n;}echo square(5); //返回25?>
如果在全局范圍中調(diào)用return語句,則當(dāng)前腳本文件將中止運(yùn)行。如果當(dāng)前腳本文件是被in-clude的或者require的,則控制交回調(diào)用文件。return也會(huì)終止eval語句或者腳本文件的執(zhí)行。
返回值可以包括數(shù)組和對(duì)象的任意類型。但是函數(shù)不能返回多個(gè)值,但可以通過返回一個(gè)數(shù)組來得到類似的效果。如:
<?phpfunction small_n (){ return array (0, 1, 2);}list ($zero, $one, $two) = small_n();?>
如果需要函數(shù)返回一個(gè)引用,必須在函數(shù)聲明和指派返回值給一個(gè)變量時(shí)都使用引用操作符&。如:
<?phpfunction &foo(){ return return $ref;}$newref = &foo();?>
可變函數(shù)
PHP支持可變函數(shù),即如果一個(gè)變量名后有圓括號(hào),PHP將尋找與變量的值同名的函數(shù),并且嘗試執(zhí)行它??勺兒瘮?shù)可以用來實(shí)現(xiàn)包括回調(diào)函數(shù)、函數(shù)表在內(nèi)的一些用途。下面通過一個(gè)示例體會(huì)什么是可變函數(shù)。
<?phpfunction fun1(){ echo "函數(shù)1<p>";}function fun2(){ echo "函數(shù)2<p>";}$m = "fun1";$m(); //調(diào)用fun1函數(shù)$m = "fun2";$m(); //調(diào)用fun2函數(shù)?>
通過上面示例可以看到,函數(shù)的調(diào)用是通過改變變量的變量名實(shí)現(xiàn)的,通過在變量名后面加上一對(duì)小括號(hào),PHP就會(huì)自動(dòng)尋找與變量名相同的函數(shù),并且執(zhí)行它,如果找不到對(duì)應(yīng)的函數(shù),則系統(tǒng)會(huì)自動(dòng)報(bào)錯(cuò)。
取消引用
當(dāng)不需要引用時(shí),可以使用unset()函數(shù)取消引用。該函數(shù)能夠斷開變量名與引用的內(nèi)容之間的聯(lián)系,而不是銷毀變量?jī)?nèi)容。如:
<?php$a = 1;$b = &$a; //定義引用echo $b; //顯示1unset($b); //取消引用echo $b; //顯示空?>
當(dāng)前文章標(biāo)題:PHP函數(shù)(2)
當(dāng)前URL:http://mnamateurbaseball.com/news/wzzz/3248.html
上一篇:PHP函數(shù)(1)
下一篇:PHP類和對(duì)象(1)