Blogger Information
Blog 34
fans 1
comment 1
visits 40892
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
默认参数、剩余参数的使用,匿名函数的调用——2019年7月30日22时03分
嘿哈的博客
Original
870 people have browsed it

默认参数的使用:

函数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',['我是','阿潮']);

运行实例 »

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

Correction status:qualified

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
Author's latest blog post