>  기사  >  백엔드 개발  >  [PHP 학습] 익명함수 활용 꿀팁 6가지

[PHP 학습] 익명함수 활용 꿀팁 6가지

little bottle
little bottle앞으로
2019-04-23 14:12:042388검색

이 기사에서는 주로 익명 기능 사용에 대한 6가지 팁에 대해 설명합니다. 관심 있는 친구가 배울 수 있습니다.

저는 이전에 클로저 사용에 대한 기사를 작성한 적이 있습니다(입력하려면 여기를 클릭하세요). 이번에는 PHP의 익명 함수에 대한 심층적인 사용법과 이해에 대해 심층적으로 요약하겠습니다.

PHP의 익명 함수 클로저 함수라고도 합니다. 이름이 지정되지 않은 함수를 지정할 수 있습니다. 익명 함수를 변수에 할당하고 변수를 통해 호출하세요. 다음은 간단한 예입니다.

<?php$anonymousFunc = function($username){    
    echo $username;
  };
  $anonymousFunc("乔峰!");

팁 1: 익명 함수를 일반 함수에 넣거나 익명 함수를 반환할 수 있습니다. 이렇게 하면 간단한 클로저가 형성됩니다.

<?php
function closureFunc(){
    $anonymousFunc = function(){
        echo "乔峰!";
    };
    $anonymousFunc();//普通函数内部调用了匿名函数
}
closureFunc();//输出: 乔峰

팁 2 익명 함수에서 지역 변수 참조(여기서는 php 키워드 사용을 인용해야 합니다)

<?php

function closureFunc(){
    $username = &#39;乔峰&#39;;
    $anonymousFunc = function() use($username){
        echo $username;
    };
    $anonymousFunc();//此处调用了匿名函数
}
closureFunc();//输出: 乔峰

팁 3 일반 함수에서 익명 함수를 반환합니다.

<?php

function closureFunc(){
    $username = &#39;乔峰&#39;;
    $anonymousFunc = function() use($username){
        echo $username;
    };
    return $anonymousFunc;// 函数返回匿名函数
}
$func = closureFunc();
$func(); //然后调用$func()

팁 4 익명 함수를 반환하고 매개변수를 전달합니다. 익명 함수에

<?php

function closureFunc(){
    $username = &#39;乔峰&#39;;
    $anonymousFunc = function($lover,$skill) use($username){
        echo $username.$lover.$skill;
    };
    return $anonymousFunc;
}
$func = closureFunc();
$func("阿朱","擒龙手");//乔峰阿朱擒龙手

팁 5 클로저를 사용하여 컨텍스트에서 참조하는 변수 값을 변경하세요.

<?php

function closureFunc(){
    $number = 100;
    $anonymousFunc = function() use($number) {
        $number++;
        echo $number.PHP_EOL;
    };
    echo $number.PHP_EOL;
    return $anonymousFunc;
}
$func = closureFunc();// 这里输出1,直接调用本函数的 echo $number.PHP_EOL; 即为100
$func();// 调用函数的返回值 $anonymousFunc  $number++ 即为101
$func(); //101
$func();//101

위 입력 결과에서 다음 두 func()는 101을 반환하고, 값이 변경되지 않은 경우 ++ 효과를 누적하려면 & 참조 기호를 추가하고(익명 함수 내의 수정은 외부 변수에도 영향을 미칩니다) 수정하세요.

<?php

function closureFunc(){
    $number = 100;
    $anonymousFunc = function() use(&$number) {
        $number++;
        echo $number.PHP_EOL;
    };
    echo $number.PHP_EOL;
    return $anonymousFunc;
}
$func = closureFunc();// 这里输出1,直接调用本函数的 echo $number.PHP_EOL; 即为100
$func();// 调用函数的返回值 $anonymousFunc  $number++ 即为101
$func(); //102
$func();//103

팁 6 익명 함수를 매개변수로 전달하세요

<?php
//定义普通函数,anonymousFunc 为参数变量
function myFunc($anonymousFunc){
    $anonymousFunc("乔峰");
}

myFunc(function($username){ //这里调用普通函数,并把 匿名函数作为参数 传给了myFunc中的$anonymousFunc
    echo $username;
});//输出 乔峰

관련 튜토리얼 : PHP 비디오 튜토리얼

위 내용은 [PHP 학습] 익명함수 활용 꿀팁 6가지의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제