博客列表 >默认参数、剩余参数的使用,匿名函数的调用——2019年7月30日22时03分

默认参数、剩余参数的使用,匿名函数的调用——2019年7月30日22时03分

嘿哈的博客
嘿哈的博客原创
2019年07月31日 19:50:43866浏览

默认参数的使用:

函数function定义过程中,给设置形式参数(占位符),并设置默认值,调用时通过赋值将实际参数提供给函数

同时也可以不要形式参数,直接用array_sum(func_get_args());返回数值


实例

<?php
    function demo1($a="我是",$b="洪吉潮"){
        return  $a . $b ;
    }
    echo demo1();
    echo '<hr>';
    echo demo1('我不是');
    echo '<hr>';
    echo demo1('我真的是','洪吉潮');
    
    function demo2(){
        return array_sum(func_get_args());
    }
    echo demo2(15,35);

运行实例 »

点击 "运行实例" 按钮查看在线实例

剩余参数的使用:

用 ...变量名 代表后面的形式参数(占位符),未被直接设置的实际参数由剩余参数收纳,以数组形式呈现


实例

<?php
function demo3($a,...$b){
        return $a + array_sum($b);
    }
    echo demo3(1,2,3,4,5,6,7,8);

    echo  '<hr>';
    function demo4($a,...$b){
        return $a . array_sum($b);
    }

    $arr = [1,5,6,2,6,4,7,5,7,3,4];
    echo demo4('我是',...$arr);

运行实例 »

点击 "运行实例" 按钮查看在线实例

参数访问和匿名函数

匿名函数也叫闭包函数,直接function(){} 表示 ,PHP的函数中不能直接访问全局变量,必须加上 global $变量名;

全局变量 会自动成为 超全局变量$GLOBALS 中的键值对 ;

同时也允许函数的嵌套定义

定义常量,函数可直接访问 :

define('NATTON','php');

const COURSE = 'php';

引用传递可以在变量名前加一个& 如 &$name;

函数访问全局变量实例

<?php
    $name = '我jiao洪吉潮';
    function name(){
        global $name;
        return $name;
    }

运行实例 »

点击 "运行实例" 按钮查看在线实例

匿名函数实例

  $data = '我jiao洪吉潮';
    $name = function (){
        global $data;
        return $data;
    };
    echo $name();

运行实例 »

点击 "运行实例" 按钮查看在线实例


函数的嵌套定义和引用传递实例

<?php

    $email = '43528518@qq***';

    $one = function () use (&$email){
        $email = '76050503@qq***';
        return function () use ($email){
            return $email;
        };
    };
    echo $one()();

运行实例 »

点击 "运行实例" 按钮查看在线实例

call_user_func_array()常用场景之一 回调函数的调用


实例

<?php
    function de1($a,$b){
        return $a.$b;
    }
    function de2($a,$b){
        return $a.$b;
    }

    echo call_user_func_array('de1',['我是','潮哥']);
    echo call_user_func_array('de2',['我是','阿潮']);

运行实例 »

点击 "运行实例" 按钮查看在线实例

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