4-1. PHP自定义函数、变量范围

自定义函数

函数的定义: 

function 函数名(形式参数1,形参2...,形参n){ 

        函数体; //任何有效的php代码都可以作为函数体使用

        return 表达式; //可以从函数值返回一个值,也可以不返回

}

 

函数的调用:

不管是自己定义的函数还是系统提供的函数,如果函数不被调用就不会执行

调用:函数被调用后开始执行函数体中的代码,执行的过程是相对独立的,执行完毕返回调用的位置向下继续执行

 

函数的参数:

形式参数由0,1,多个变量组成

实际参数由0,1,多个参数组成,每个参数是个表达式,用逗号分隔

 

函数的返回值:

函数的返回值是将函数执行后的结果返回给调用者

默认如果不写返回则函数的返回值为NULL

//例子1
function add($a,$b){ //形式参数
    echo $a+$b;
}

add(10,20);  //php页面显示30


// 例子2
function add($a,$b){
    return $a+$b;   //return功能: 返回值给调用的地方,结束这个函数的运行
}

add(10,20);  //php页面什么都不显示,因为不是echo输出
var_dump(add(10, 20)); //输出return值
echo add(10, 20);  //输出return值
//返回值参与的运算例子
function add($a,$b){
    return $a+$b;
}
$i=add(10,20)*10;
echo $i; //300

//不写return则默认函数值为null的例子
function add($a,$b){
    echo $a+$b;
}
var_dump(add(10,20));
//30
//null

 

变量范围

局部变量:

局部变量也称为内部变量,局部变量是在函数内定义的,其作用域仅限于函数内部

function test(){
    $a=1;
}
echo $a; //error

 

全局变量:

全局变量也称为外部变量,在函数的外部定义的,它的作用域为从变量定义处开始到本程序文件的末尾

在PHP函数中无法直接使用全局变量,如需使用必须使用global声明变量

$i=10;
function test(){
    global $i;
    echo $i;
}
test(); //10

 

静态变量:

静态变量是指在函数内部定义变量的时候使用static关键字来定义变量

特点:函数执行完毕后变量不会立即消失,当再次调用时,静态变量保存的值依然存在,并且仅在第一次执行函数的时候

会初始化值!

function test(){
    static $a=20;  //仅在第一次调用时执行
    echo ++$a;
}

echo test()."<br/>";  //21
echo test()."<br/>";  //22
echo test();          //23


/* 情况2 */
function test(){
    $a=20; 
    echo ++$a;
}

echo test()."<br/>";  //21
echo test()."<br/>";  //21
echo test();          //21

数据长久保存一般保存在硬盘或者数据库中

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值