Blogger Information
Blog 48
fans 0
comment 0
visits 40797
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
函数初学--2019年09月28日20时00分
小星的博客
Original
642 people have browsed it

函数初认识

  • 函数是实现代码复用的重要手段。

  • 函数一般分为 系统函数 和 自定义函数。

  • 函数 基本都会有 return 返回值,若没有,PHP中默认返回 NULL。

  • PHP 中作用域分为 函数作用域和全局作用域。

超全局变量,全局变量使用

只要是定义在函数外的变量就是 全局变量;

在此基础上,不需要声明的 全局变量 便是 超全局变量,比如 $_GET, $_POST等,都存在 $GLOBALS 这个变量中

在 PHP 中,函数访问 全局变量 不能直接访问


function fun1(){
//  1.和 js不同,函数内部不能直接访问全局变量,需要进行声明
//   在函数里访问 全局变量需要先 声明一下
  global $name;
  echo $name;

//  2. 利用 $GLOBALS 数组访问,超全局变量可以直接使用
  echo $GLOBALS['name'];
}

这里 认识一下 $GLOBALS 变量

新增的 全局变量 会自动成为 $GLOBALS 的一个键值对。

函数参数

在PHP中 函数 的形参设置但是不传实参的话是会报错的(比较严格),所以需要对于一些形参进行设置默认值(所以你要么就别放形参,放了形参就要注意是否有默认值 或者 是否都传了实参)

function fun1($a,$b=4) { // 考虑到 $b 可能不会有实参传入,所以设置一个默认值
    return $a;
}
fun1(3); // 只传了第一个参数

关于参数的预设方法:

  • func_num_args() :返回实参数量

  • func_get_args() : 返回实参数组

  • func_get_arg(index) : 返回指定位置实参

这里来认识一下 剩余参数(又叫 变长参数,PHP7+新语法)

// ...$params 相当于将剩余传入的实参打包到一个数组变量中
function fun4($a, ...$params) {
    print_r($params);
    return  '和为:'.array_sum($params);
}
echo fun4(2,3,4,5);

TIM截图20191021215651.png

可以看到剩余参数都传入了一个数组中

计算不定参数的乘积, 要求使用到剩余参数来实现

function calc(...$params) {
//   1. 使用 foreach 实现
    $product = 1;
    foreach($params as $value) {
        $product *= $value;
    }
    return $product;

//   2. 使用 array_product()求积方法一步实现
    return array_product($params);
}


Correction status:Uncorrected

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments