博客列表 >函数初学--2019年09月28日20时00分

函数初学--2019年09月28日20时00分

小星的博客
小星的博客原创
2020年09月09日 07:42:21633浏览

函数初认识

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

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

  • 函数 基本都会有 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);
}


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议