第一支PHP自定函數 (或傳值呼叫函數)
以下的範例是一個簡單與典型的傳值呼叫方式的自定義函數。在呼叫該函數時會傳入$user這個全域性變數,然而$user這個字串變數值不會因為執行該函數後,產生任何的改變。這個就是傳值呼叫函數的重要特徵。
<?php // 我的自定函數 (傳值函數) function my_function($name) { echo $name."歡迎光臨!<br/>"; $user = "大毛"; } // 呼叫自定函數 $user = "小明"; my_function($user); echo $user; ?>輸出畫面:
小明歡迎光臨!
小明
傳址呼叫函數
何謂傳址呼叫函數? 故明思義,就是傳遞參數的記憶體的參考位置給自定函數使用的意思,如果還是以上面的例子來改寫說明如下,請仔細注意my_function函數的$name參數左邊多了一個&字母,表示當再次呼叫該自定函數後,$user這個全域性字串變數值會因為執行而結果產生變化。
<?php // 我的自定函數 (傳址函數) function my_function(&$name) { echo $name."歡迎光臨!<br/>"; $name = "大毛"; } // 呼叫自定函數 $user = "小明"; my_function($user); echo $user; ?>輸出畫面:
小明歡迎光臨!
大毛