PHP函数
PHP教程 - PHP函数
函数是执行特定任务的自包含代码块。
函数避免重复代码。它们使得更容易消除错误。
函数可以在其他脚本中重用。他们帮助你分解一个大项目。
参数
函数通常接受一个或多个参数,它们是由调用它的代码传递给函数的值。
然后函数可以读取并处理这些参数。
返回
函数可以可选地返回可以由调用代码读取的值。
这样,调用代码可以与函数通信。
PHP函数创建
我们用function关键字定义函数,后面是函数的名称和两个括号。
你的函数将执行的实际代码大括号之间。
定义函数使用以下语法:
function myFunc() {
// (do stuff here)
}
示例 - 定义函数
定义函数
<?PHP
function hello() {
echo "Hello, world!\n";
}
hello();
?>
上面的代码生成以下结果。

正如你可以看到,这个脚本定义一个函数,hello(),只是显示string“Hello,world!"
hello()函数中的代码仅在稍后调用函数时运行,而不是当函数本身被创建时。
PHP函数返回
函数可以从函数返回一个值使用return语句。
如果你试图给一个变量赋值一个函数的返回值没有返回值,你的变量将被设置为NULL。
示例 - 函数的返回值
从函数返回值
<?PHP
function foo() {
print "In function";
return 1;
print "Leaving function...";
}
print foo();
?>
上面的代码生成以下结果。

PHP返回参考
除了通过引用将变量传递给函数,你也可以得到返回引用的函数,而不是价值观。
在函数中的函数名称前添加一个&符号定义。 然后,当您使用return语句返回一个变量时,你传递一个引用变量返回调用代码,而不是变量的s值:
function &myFunc(){
// (do stuff)
return $var; // Returns a reference to $var
}
从函数返回引用
<?PHP
$myNumber = 5;
function &getMyNumber() {
global $myNumber;
return $myNumber;
}
$numberRef = &getMyNumber();
$numberRef++;
echo "\$myNumber = $myNumber\n"; // Displays "6"
echo "\$numberRef = $numberRef\n"; // Displays "6"
?>
上面的代码生成以下结果。

PHP递归函数
递归函数是调用自身的函数。
这里是一个递归函数如何操作的快速概述:
递归函数由调用代码调用如果满足基本情况,则该函数需要计算,然后退出。
否则,该函数需要计算,然后调用自身继续递归。
这里是一个计算阶乘的例子:
<?PHP
function factorial($number) {
if ($number == 0) return 1;
return $number * factorial($number-1);
}
print factorial(6);
?>
上面的代码生成以下结果。

示例 - PHP递归函数
下面的代码显示了如何创建递归函数。
<?php
function checkInteger($Number)
{
if($Number > 1)
{
// integer minus one is still an integer
return(checkInteger($Number-1));
}
elseif($Number < 0)
{
//numbers are symmetrical, so
//check positive version
return(checkInteger((-1)*$Number-1));
}
else
{
if(($Number > 0) AND ($Number < 1))
{
return("no");
}
else
{
//zero and one are
//integers by definition
return("yes");
}
}
}
print("Is 0 an integer? " . checkInteger(0) . "<br>\n");
print("Is 7 an integer? " . checkInteger(7) . "<br>\n");
print("And 3.5? " . checkInteger(3.5) . "<br>\n");
print("What about -5? " . checkInteger(-5) . "<br>\n");
print("And -9.2? " . checkInteger(-9.2) . "<br>\n");
?>
上面的代码生成以下结果。

PHP匿名函数
PHP匿名函数没有名称。
您可能需要创建匿名函数,有两个原因:
- To create functions dynamically
- To create short-term, disposable functions
句法
要创建匿名函数,请使用分隔的参数列表(如果有)和函数体的代码。
$myFunction = create_function( "$param1, $param2", "function code here;" ); 匿名函数示例
这里是一个基于变量值动态创建匿名函数的示例:
<?PHP
$mode = "+";
$processNumbers = create_function( "$a, $b", "return \$a $mode \$b;" );
echo $processNumbers( 2, 3 ); // Displays "5"
?>
上面的代码生成以下结果。

该代码使用$ mode变量的值作为运算符用于处理其两个参数$ a和$ b。例如,如果将$ mode更改为“*",代码将显示“6"。
示例 - 动态函数
下面的代码显示了如何动态调用函数。
<?php
function write($text)
{
print($text);
}
function writeBold($text)
{
print("<b>$text</b>");
}
$myFunction = "write";
$myFunction("Hello!");
print("<br>\n");
$myFunction = "writeBold";
$myFunction("Goodbye!");
print("<br>\n");
?>
上面的代码生成以下结果。

免费 AI IDE


更多建议: