我有一个php接口

interface IDummy{
public function DoSomething();
}

我有另一个实现这个接口的类。
class Dummy implements IDummy{
public function DoSomething(){

}

如何在php中将dummy对象类型转换为idummy,以便可以将其称为
$dum = new Dummy();
$instance = (IDummy)$dum;
$instance->DoSomething();

我能用php做这个吗?
谢谢和问候
阿比谢·斯里坎特

最佳答案

这个演员完全没有必要。它只会起作用。
如果您使用各种类型的提示函数之一检查idummy,则虚拟对象将被视为idummy的实例。
这很管用…无需铸造:

interface I {
  public function foo();
};

class A implements I {
  public function foo() { }
}

function test(I $obj) {
  $obj->foo();
}

$a = new A();
test($a);

10-07 17:32