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