gpt4 book ai didi

php - 如何检查一个对象是否可以使用 PHP 实例化

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:06:10 25 4
gpt4 key购买 nike

我不能这样做,但想知道什么会起作用:

is_object(new Memcache){
//assign memcache object
$memcache = new Memcache;
$memcache->connect('localhost', 11211);
$memcache->get('myVar');
}
else{
//do database query to generate myVar variable
}

最佳答案

您可以使用class_exists() 来检查一个类是否存在,但如果您可以实例化该类,它不会返回!

你不能的原因之一,可能是它是一个抽象类。要检查它,您应该检查 class_exists() 之后执行类似的操作。

对于上面的例子,这可能是不可能的(有一个抽象类,而不是检查它),但在其他情况下可能会让你头疼:)

//first check if exists, 
if (class_exists('Memcache')){
//there is a class. but can we instantiate it?
$class = new ReflectionClass('Memcache')
if( ! $class->isAbstract()){
//dingdingding, we have a winner!
}
}

关于php - 如何检查一个对象是否可以使用 PHP 实例化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12204396/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com