检查存储名称 class 的变量是否是 class 的实例
Check if variable which stores name of a class is an instanceof a class
我可能遗漏了 is_a() and instanceof 中的某些内容,但是有没有办法让这个字符串版本有效?
$myclass = 'MyClass';
if ($myclass instanceof MyClass) {
echo 'Yes';
} else {
echo 'No';
}
这按预期工作正常并打印 Yes:
$myclass = new MyClass();
if ($myclass instanceof MyClass) {
echo 'Yes';
else {
echo 'No';
}
问题:
Check if variable which stores name of a class is an instanceof a class
我的回答:
如果变量存储 class 的名称,则它不能是 class 的实例,因为它是一个字符串!
您可能想要的:
Check if variable stores a name of existing class
解决方法:
if (class_exists($myclass)) { ... }
我可能遗漏了 is_a() and instanceof 中的某些内容,但是有没有办法让这个字符串版本有效?
$myclass = 'MyClass';
if ($myclass instanceof MyClass) {
echo 'Yes';
} else {
echo 'No';
}
这按预期工作正常并打印 Yes:
$myclass = new MyClass();
if ($myclass instanceof MyClass) {
echo 'Yes';
else {
echo 'No';
}
问题:
Check if variable which stores name of a class is an instanceof a class
我的回答:
如果变量存储 class 的名称,则它不能是 class 的实例,因为它是一个字符串!
您可能想要的:
Check if variable stores a name of existing class
解决方法:
if (class_exists($myclass)) { ... }