计算机程序里的函数跟数学里的函数是有一定区别的。虽然它借用了一些数学里的函数概念。
在我们没有完全了解计算机程序里函数的概念之前,我们暂时可以姑且理解为:函数就是一些可以用来被反复调用的代码块。
本期要点:
怎么定义函数(函数的声明)
怎么调用函数
局部变量的概念(传参与返回值)
函数的声明与调用
自定义函数
在 PHP 当中需要开发人员手动声明的函数就叫自定义函数。
还有一部分是系统内置的,就是系统函数。
语法:
function functionName() {
被执行的代码;
}
函数声明以关键字 "function" 开头。
函数名能够以字母或下划线开头(而非数字)。
例子,代码:
<?php
//函数声明
function name(){
echo "123";
}
//函数调用
name();
name();
name();
?>
这里我们调用了三次。
浏览器输出效果:
可以看到在浏览器中被输出了三次。
系统函数
系统内置的函数一般不需要声明,直接就可以调用。
比如我们之前用过的 var_dump() 就是一个系统函数。
由此我们可以联想到:后面有 ( ) 的就是函数;前面有 $ 符的就是变量;被 [ ] 包起来的就是数组...
还有一些函数需要和特定地 PHP 扩展模块一起编译,否则在使用它们的时候就会得到一个致命的"未定义函数"错误。
关于系统函数还有很多,想要详细了解的可以自己提前去翻官方手册:PHP 网站开发——开发前的准备工作 中有下载地址。具体章节在【PHP 手册】-【语言参考】-【函数】-【内部(内置)函数】
全局变量与局部变量
局部变量的概念
局部变量顾名思义就是,它只在某段特定的代码内有效。
在 PHP 当中一般情况下函数内部的变量是不能被外部调用的。
而函数外部的变量(全局变量)也无法被函数内部进行直接调用。
为了解决这两个问题就有了参数与返回值的概念。
函数的参数
通过参数列表可以传递信息到函数,即以逗号作为分隔符的表达式列表。参数是从左向右求值的。
例子,代码:
<?php
$aa = 10;
name( $aa,[1,2,3]);
function name( $nn='100', $yy ){
//var_dump( $aa )
var_dump( $nn, $yy );
}
?>
代码说明:
$aa 是全局变量
(也就是说正常情况我们在函数内部是无法调用的。比如,我们我们在函数内部进行打印:var_dump($aa) 系统是会报错的。
函数内小括号中的 $nn='100', $yy 就是函数的参数。
$nn='100' 对应 name($aa,[1,2,3]) 中的 $aa ;
$yy 对应 name($aa,[1,2,3]) 中的 [1,2,3]
(这里就不说原理了,参数是从左向右求值的)
当我们在函数内部打印 $nn 与 $yy 的值的时候,输出的其实就是 $aa 与 $yy 的值。
浏览器输出效果:
返回值
例子,代码:
<?php
echo name( 100,200);
function name( $nn, $yy ){
$cc = $nn+$yy ;
return $cc;
}
?>
代码说明:
根据面前的内容我们知道 $nn 的值是 100 ,$yy 的值是 200 。
$cc 是一个局部变量,它的值是 $nn+$yy 也就是 300 。
理论上外部是无法调用局部变量 $cc 的。所以这里我们用 return 进行返回。
所以调用函数 echo name(100,200) 输出的值应该是 300 。
这里也可以用一个变量来保存它,比如:$xx = name(100,200) ,然后再输出变量 $xx 的值:echo $xx ,最后它们的结果是一样的。
浏览器输出效果:
更多分享
0 基础教程丨PHP 网站开发
效率工具
小众电影
0 基础教程丨小程序开发
联系客服