라이브러리

[PHP] Closure::call - 클로저를 바인딩하고 호출합니다.




PHP Closure::call() 메소드


Closure::call() 메소드는 PHP 7.1 버전부터 사용할 수 있는 메소드입니다. 이 메소드는 Closure 객체를 호출할 때, 첫 번째 인자를 첫 번째 인자로 전달하는 기능을 제공합니다.

Closure::call() 메소드의 사용법


Closure::call() 메소드는 다음과 같이 사용할 수 있습니다.

#hostingforum.kr
php

$func = function($x) {

    return $x * 2;

};



$result = $func->call(10);

echo $result; // 20



위의 예제에서, Closure::call() 메소드는 $func Closure 객체를 호출하고 첫 번째 인자로 10을 전달합니다. 이로 인해 $func Closure 객체 내부에서 $x = 10이 됩니다.

Closure::call() 메소드의 사용법 (인자 전달)


Closure::call() 메소드는 인자를 전달할 수 있습니다.

#hostingforum.kr
php

$func = function($x, $y) {

    return $x + $y;

};



$result = $func->call(10, 20);

echo $result; // 30



위의 예제에서, Closure::call() 메소드는 $func Closure 객체를 호출하고 첫 번째 인자로 10, 두 번째 인자로 20을 전달합니다. 이로 인해 $func Closure 객체 내부에서 $x = 10, $y = 20이 됩니다.

Closure::call() 메소드의 사용법 (인자 전달, 기본 인자)


Closure::call() 메소드는 기본 인자를 전달할 수 있습니다.

#hostingforum.kr
php

$func = function($x = 10, $y = 20) {

    return $x + $y;

};



$result = $func->call(30);

echo $result; // 50



위의 예제에서, Closure::call() 메소드는 $func Closure 객체를 호출하고 첫 번째 인자로 30을 전달합니다. 이로 인해 $func Closure 객체 내부에서 $x = 30, $y = 20이 됩니다.

Closure::call() 메소드의 사용법 (인자 전달, 기본 인자, 인자 생략)


Closure::call() 메소드는 기본 인자를 전달하고, 일부 인자를 생략할 수 있습니다.

#hostingforum.kr
php

$func = function($x = 10, $y = 20) {

    return $x + $y;

};



$result = $func->call(30);

echo $result; // 50



$result = $func->call(30, 40);

echo $result; // 70



위의 예제에서, Closure::call() 메소드는 $func Closure 객체를 호출하고 첫 번째 인자로 30을 전달합니다. 이로 인해 $func Closure 객체 내부에서 $x = 30, $y = 20이 됩니다. 두 번째 호출에서는 첫 번째 인자로 30, 두 번째 인자로 40을 전달합니다. 이로 인해 $func Closure 객체 내부에서 $x = 30, $y = 40이 됩니다.

결론


Closure::call() 메소드는 Closure 객체를 호출할 때, 첫 번째 인자를 첫 번째 인자로 전달하는 기능을 제공합니다. 이 메소드는 인자를 전달할 수 있으며, 기본 인자를 전달할 수 있습니다. 또한 일부 인자를 생략할 수 있습니다. 이 메소드는 PHP 7.1 버전부터 사용할 수 있습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 654 페이지

검색

게시물 검색