Closures can be either anonymous or not.
Here is an anonymous closure:
$c1 = function () {};
And here is a *non* anonymous closure:
$c2 = Closure::fromCallable(['Foo', 'bar']);
ReflectionFunction::isAnonymous() returns true for $c1 and false for $c2.
Before PHP 8.2, one had to do this check to decide between both:
$r = new \ReflectionFunction($c1);
$isAnonymous = false !== strpos($r->name, '{closure}');
ReflectionFunction::isAnonymous() makes it easier to check.
PHP.mk документација
ReflectionFunction::isAnonymous
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Патека
reflectionfunction.isanonymous.php
Локална патека за оваа страница.
Извор
php.net/manual/en
Оригиналниот HTML се реупотребува и локално се стилизира.
Режим
Прокси + превод во позадина
Кодовите, табелите и белешките остануваат читливи во истиот тек.
Референца
reflectionfunction.isanonymous.php
ReflectionFunction::isAnonymous
Референца за `reflectionfunction.isanonymous.php` со подобрена типографија и навигација.
ReflectionFunction::isAnonymous
(PHP 8 >= 8.2.0)
ReflectionFunction::isAnonymous — Checks if a function is anonymous
Параметри
Оваа функција нема параметри.
Вратени вредности
Патеката до PHP скриптата што треба да се провери. true if the function is anonymous, otherwise false.
Примери
Пример #1 (од PHP 8.2.1) example
<?php
$rf = new ReflectionFunction(function() {});
var_dump($rf->isAnonymous());
$rf = new ReflectionFunction('strlen');
var_dump($rf->isAnonymous());
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
bool(true) bool(false)
Белешки од корисници 2 забелешки
nicolasgrekas at php dot net ¶
3 години пред
Taufik Nurrohman ¶
3 години пред
You know that anonymous function is just an instance of class `Closure` so this would be equivalent to check whether a variable is an anonymous function or not:
<?php
$test = function () {};
if (is_callable($test) && is_object($test) && $test instanceof Closure) { /* ... */ }
?>