>백엔드 개발 >PHP 튜토리얼 >java - 전역을 직접 사용하는 것과 PHP 익명 함수에서 외부 공간의 변수를 전달하는 데 사용하는 것의 차이점은 무엇입니까?

java - 전역을 직접 사용하는 것과 PHP 익명 함수에서 외부 공간의 변수를 전달하는 데 사용하는 것의 차이점은 무엇입니까?

WBOY
WBOY원래의
2016-08-18 09:16:301061검색

PHP의 익명 함수에서 직접 global을 사용하는 것과 외부 공간에서 변수를 전달하기 위해 use를 사용하는 것의 차이점은 무엇인가요?

답글 내용:

PHP의 익명 함수에서 직접 global을 사용하는 것과 외부 공간에서 변수를 전달하기 위해 use를 사용하는 것의 차이점은 무엇인가요?

클로저 함수를 사용하는 변수는 전역 변수에 영향을 미치지 않습니다.

<code><?php
$global = $global2= 'hello';
$fun = function() use ($global){
    $global.=' world!';
    global $global2;
    $global2.=' world!';
};
$fun();
echo $global."\n";
//hello
echo $global2;
//hello world!
</code>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.