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中通过引用调用的简单示例。
file: functionref.php
<?php
function adder(&$str2)
{
$str2 .= 'call by reference';
}
$str = 'hello ';
adder($str);
echo $str;
?>
执行上面代码结果如下 -
hello call by reference
我们可以在函数中指定默认参数值。 在调用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函数的例子。
文件: functiondefaultarg.php
<?php
function cube($n){
return $n*$n*$n;
}
echo "cube of 3 is: ".cube(3);
?>
执行上面代码结果如下 -
cube of 3 is: 27