繁体   English   中英

函数参数中的PHP接口类

[英]PHP Interface class in function arguments

我想使用像Java接口这样的PHP接口。 我是如何在PHP中完成这项工作的?

Android(Java):

btnDownload.setOnClickListener(new OnClickListener() {          
    @Override
    public void onClick(View v) {
        //---------------------------------
    }
});

我想用PHP:

$installer->setOnInstallerListener(new IInstaller(){
    function onError()
    {
        echo 'OK';
    }
});

IInstaller是一个接口:

interface IInstaller
{
    public function onError();
}

似乎PHP7支持这一点。 http://php.net/manual/en/language.oop5.anonymous.php

new class(10) extends SomeClass implements SomeInterface {
    private $num;

    public function __construct($num)
    {
        $this->num = $num;
    }

    use SomeTrait;
}

使用PHP5,您可以做的最好的方法是使用闭包来模仿行为: http ://www.clock.co.uk/blog/mimicking-anonymous-classes-in-php-using-closures

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM