PHP函数

PHP 函数

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

什么是函数

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

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

•       都有特殊的名称

•       都有或多或少的参数

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

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

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

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

什么是函数参数

我们可以把函数想象成一个榨汁机,参数就好比是我们投放进去的水果,而函数中执行的代码就好比是搅拌机的搅动

参数不同,函数返回的结果也不同,就像投放了橙子后不会出苹果汁一个道理。函数也可以接受多个参数,就好比是混合果汁

函数只留给我们函数名来调用,而我们无需了解函数里的代码是如何定义的,同样,我们也不需要了解榨汁机里的工作原理

PHP 内建函数

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

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

 

PHP 函数

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

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

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

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

创建 PHP 函数

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

语法

function 函数名(参数1, 参数2, 参数3 ……) {

    代码/语句;

    return 返回值;

}

PHP的函数不一定都要明确保留return语句,如果没有return,函数会自动返回null

PHP 函数准则:

·         函数的名称应该提示出它的功能

·         函数名称以字母或下划线开头(不能以数字开头)

实例

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

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

 

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>


实例 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>


PHP 函数 - 返回值

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

实例

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

 

自定义函数

我们之前调用的都是PHP内置的函数。但是,编程语言真正的功能是通过创建自己的函数来实现的

PHP提供的函数大多是基础的功能,譬如操作数组、访问数据库、读写文件等

但是,现实项目中,PHP函数是无法满足我们的需求的,我们找不到可以用来处理合同的函数、没有计算出勤率的函数、没有打印数据表格的函数

幸运的是,我们并不只局限于PHP内置函数,我们可以编写自己的函数来完成任何任务,这就是自定义函数。可以在自定义函数中使用PHP的内置函数,下面我们来了解函数的基本结构.

 

 

一次函数

在计算机中,函数最早就是用来模拟各种数学函数的,看下下面的代码

function linear($x) {
    $k = 5;
    $b = 3;
    $y = $k * $x + $b;
    return $y;
}

$value = 3;
echo linear($value);

该函数可以求解一次方程

 

•       函数是个黑盒,linear内部的任何变量在外部都无法访问

•       同样,函数内部也无法访问外部的变量

•       外部传递数据给函数使用参数

•       函数返回数据给外部使用返回值

 

函数的默认值

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

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

         代码/语句;

         return 返回值;

}

函数名(1);此时函数体内参数2的值是1(默认值)

函数名(1,2);此时函数体内参数2的值是2(传递的值)

 

 

默认值的作用

在实际的开发中,我们经常用到它,为什么?

假设有一个系统函数,已经使用了很久,到处都有调用它的地方,如果需要添加新的逻辑,很有可能需要给它添加一个新的参数

如果添加了新参数,这时函数的定义改变了,我们需要找到每个调用的地方去修改并增加这个参数

如果给个默认值呢?默认值用来控制关闭新的逻辑,这样原先的代码不用做任何修改也不会执行到新的逻辑,而新的代码,可以显示的指定参数打开新的逻辑 


继续学习
||
<html> <body> <?php function add($x,$y) { $total=$x+$y; return $total; } echo "1 + 16 = " . add(1,16); ?> </body> </html>
提交重置代码