Как обнаружить экземпляр анонимного класса?
Начиная с PHP7, у нас есть анонимные классы.
Как мы можем узнать, является ли $instance
экземпляром анонимного класса?
7
2 answers
Использование Отражения
$instance = new class {};
$testInstance = new ReflectionClass($instance);
var_dump($testInstance->isAnonymous());
РЕДАКТИРОВАТЬ
Конечно, учитывая, что вы все равно должны запускать PHP7 для анонимных классов, заверните его в однострочный
var_dump((new ReflectionClass($instance))->isAnonymous());
9
Author: Mark Baker, 2016-06-08 10:52:34
Вы можете попробовать это: Здесь
<?php
class TestClass {}
$anonClass = new class {};
$normalClass = new ReflectionClass('TestClass');
$anonClass = new ReflectionClass($anonClass);
var_dump($normalClass->isAnonymous());
var_dump($anonClass->isAnonymous());
?>
Вывод:
Bool(ложь) bool(истина)
0
Author: Mahesh Saini, 2016-06-08 10:57:04