PHP 函数

我们在之前的学习中已经使用过大量的函数:var_dump以及非常多的数组函数,他们的特点是什么?

1. 都可以执行一些特定的功能

2. 都有特殊的名称

3. 都有或多或少的参数

4. 大多数函数都会有返回值,即使没有也会执行特定的操作

5. 不需要知道函数内部的实现逻辑

函数存在于大多数的程序语言中,它们被用于分隔哪些能够完成独立明确任务的代码。

函数名称必须以字母或者下划线开头,后面跟随字母、数字或者下划线,另外函数名是大小写不敏感的

PHP 的真正威力源自于它的函数。

在 PHP 中,提供了超过 1000 个内建的函数。

PHP 内建函数

如需查看所有数组函数的完整参考手册和实例,请访问我们的 PHP 参考手册。

PHP 函数

我们之前调用的都是PHP内置的函数,大多是基础的功能;但是,现实项目中,是无法满足我们的需求的。 因此,我们并不只局限于PHP内置函数,我们可以编写自己的函数来完成任何任务。

在本章中,我们将为您讲解如何创建自己的函数。

如要在页面加载时执行脚本,您可以把它放到函数里。

函数是通过调用函数来执行的。

你可以在页面的任何位置调用函数。

创建 PHP 函数

函数是通过调用函数来执行的。

function 函数名([参数名1[=值1], 参数名2[=值2], 参数名n[=值n]])

函数中的功能体(代码/语句) 
[return 返回值] 

说明:

1. 函数以function开始

2. function后面接空格,空格后接函数名

3. 函数名与变量命名规则基本一样,但是不同的是:函数名不区分大小写

4. 所谓参数其实就是变量

5. 函数名后接括号,括号内跟参数,参数全都有[](中括号)括起来了,代表参数可填可不填

6. 参数的话,参数后可以接(=)等号,等号接默认值。参数值也是用[](中括号)括起来的,代表选填

7. 函数后的参数变量,主要功能是把函数体外的变量值,传入函数体内来使用,函数体的变量和函数体外的变量通常是两个不同的变量。

8. 函数中的具体功能(功能体)用大括号括起来,代表这是一个函数的功能区间

9. 函数可以有返回值也可以没有返回值,用[](中括号)括起来的,代表选填。

10. return后接空格,空格后接返回值,若有return,return后的代码均不执行。

11. 函数的执行没有顺序关系,可以在定义处之前的位置调用

12. 函数不能被定义两次,即函数不能被重载

简单的实例:

一个简单的函数,在其被调用时能输出我的名称:

<html>
<body>
<?php
function writeName()
{
echo "Kai Jim Refsnes";
}
echo "My name is ";
writeName();
?>
</body>
</html>

输出:

My name is Kai Jim Refsnes

PHP 函数 - 添加参数

为了给函数添加更多的功能,我们可以添加参数。参数类似变量。

参数就在函数名称后面有一个括号内指定。

实例 1

下面的实例将输出不同的名字,但姓是相同的:

<html>
<body>
<?php
function writeName($fname)
{
echo $fname . "Refsnes.<br>";
}
echo "My name is";
writeName("Kai Jim");
echo "My sister's name is";
writeName("Hege");
echo "My brother's name is";
writeName("Stale");
?>
</body>
</html>

输出:

My name is Kai Jim Refsnes.
My sister's name is Hege Refsnes.
My brother's name is Stale Refsnes.

实例 2

下面的函数有两个参数:

<html>
<body>
<?php
function writeName($fname,$punctuation)
{
echo $fname . "Refsnes" . $punctuation . "<br>";
}
echo "My name is";
writeName("Kai Jim",".");
echo "My sister's name is";
writeName("Hege","!");
echo "My brother's name is";
writeName("Ståle","?");
?>
</body>
</html>

输出:

My name is Kai Jim Refsnes.
My sister's name is Hege Refsnes!
My brother's name is Ståle Refsnes?

PHP 函数 - 返回值

如需让函数返回一个值,请使用 return 语句。

实例

<html>
<body>
<?php
function add($x,$y)
{
$total=$x+$y;
return $total;
}
echo "1 + 16 =" . add(1,16);
?>
</body>
</html>

输出:

1 + 16 = 17

函数的默认值

回顾函数的语法,只要稍作修改,给第二个参数后面加上等号,并且赋值,那么参数2就有了默认值, 函数调用时只需要传递一个参数1

function 函数名([参数1, 参数2 = 2)

函数中的功能体(代码/语句) 
[return 返回值] 

作用:

假设有一个系统函数,已经使用了很久,到处都有调用它的地方,如果需要添加新的逻辑,很有可能需要给它添加一个新的参数。 如果添加了新参数,这时函数的定义改变了,我们需要找到每个调用的地方去修改并增加这个参数。 如果给个默认值呢?默认值用来控制关闭新的逻辑,这样原先的代码不用做任何修改也不会执行到新的逻辑, 而新的代码,可以显示的指定参数打开新的逻辑。

实例

<html>
<body>
<?php
function add($x,$y = 10)
{
$total=$x+$y;
return $total;
}
echo "1 + 10 =" . add(1);
?>
</body>
</html>

由上面的实例看出,函数后的参数如果有默认值,默认值代表的这个参数可以不用传值进去。
如:echo "1 + 10 = " . add(1)中只是传了一个值 1 给 $x。


继续学习
||
<html> <body> <?php function writeName() { echo "Kai Jim Refsnes"; } echo "My name is "; writeName(); ?> </body> </html>
提交重置代码