PHP函數
PHP函數是一段可以重複使用多次的代碼。 它可以接受輸入作爲參數列表和返回值。 PHP中有成千上萬的內置函數。
在PHP中,我們可以定義條件函數,函數內的函數和遞歸函數。
PHP函數的優點
代碼重用性:PHP函數只定義一次,可以多次調用,就像其他編程語言一樣。
使用更少的代碼: 它節省了大量代碼,因爲我們不需要多次重寫邏輯。 通過使用函數,可以只寫一次邏輯並重用它。
易於理解: PHP函數分離了編程邏輯。 因此,更容易理解應用程序的流程,因爲每個邏輯都被劃分爲函數的形式。
PHP用戶定義函數
我們可以很容易地聲明和調用用戶定義的函數。下面來看看看聲明用戶定義函數的語法。
function functionname(){
//code to be executed
}
注意:函數名必須以字母和下劃線開頭,與PHP中的其他標籤(如:變量)一樣。 它不能以數字或特殊符號開頭。
執行上面代碼結果如下 -
PHP函數示例1
文件: function1.php
<?php
function sayHello(){
echo "Hello PHP Function";
}
sayHello();//calling function
?>
執行上面代碼結果如下 -
Hello PHP Function
函數參數
我們可以通過用逗號分隔的參數傳遞PHP函數中的信息。
PHP支持按值調用(默認),通過引用調用,默認參數值和可變長度參數列表。
下面來看看看在PHP函數中傳遞單個參數的例子。
文件: functionarg.php
<?php
function sayHello($name){
echo "Hello $name<br/>";
}
sayHello("MaxSu");
sayHello("MinSu");
sayHello("John");
?>
執行上面代碼結果如下 -
Hello MaxSu
Hello MinSu
Hello John
下面來看看看在PHP函數中傳遞兩個參數的例子。
文件: functionarg2.php
<?php
function sayHello($name,$age){
echo "Hello $name, you are $age years old<br/>";
}
sayHello("Maxsu",27);
sayHello("Minsu",26);
sayHello("John",23);
?>
執行上面代碼結果如下 -
Hello Maxsu, you are 27 years old
Hello Minsu, you are 26 years old
Hello John, you are 23 years old
PHP引用調用
傳遞給函數的值默認情況下不會修改實際值(通過值調用)。 但我們可以通過傳遞值作爲參考(引用)。
默認情況下,傳遞給函數的值是通過值調用。 要傳遞值作爲參考(引用),您需要在參數名稱前使用&符號(&)。
下面來看看一個在PHP中通過引用調用的簡單示例。
File: functionref.php
<?php
function adder(&$str2)
{
$str2 .= 'Call By Reference';
}
$str = 'Hello ';
adder($str);
echo $str;
?>
執行上面代碼結果如下 -
Hello Call By Reference
PHP函數:默認參數值
我們可以在函數中指定默認參數值。 在調用PHP函數時,如果不指定任何參數,它將採用默認參數。 下面來看看一個在PHP函數中使用默認參數值的簡單示例。
文件: functiondefaultarg.php
<?php
function sayHello($name="default_name"){
echo "Hello $name<br/>";
}
sayHello("maxsu");
sayHello();//passing no value
sayHello("John");
?>
執行上面代碼結果如下 -
Hello maxsu
Hello default_name
Hello John
PHP函數:返回值
下面來看看一個有返回值的PHP函數的例子。
文件: functiondefaultarg.php
<?php
function cube($n){
return $n*$n*$n;
}
echo "Cube of 3 is: ".cube(3);
?>
執行上面代碼結果如下 -
Cube of 3 is: 27