佚名通过本文主要向大家介绍了php 多图片上传插件,eclipse php插件,sublime php插件,php插件,php图片上传插件等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:如何用PHP实现一个类似插件中心的类?
描述:
解决方案1:
描述:
有个php的config文件,里面用保存了一些类名
怎么写一个类,把这个config文件中的类new出来,同时去调用他们的run方法(这些类还不存在,后期再陆续补充,但是所有类都有一个run方法)?
我想给这些类的run方法传一个值,所有的这些run方法执行完成后,返回给我处理完的一个值,这种怎么弄?
这个需求,有点像插件一样,插件有些规则,有个插件中心的类,专门处理这些插件的调用,传值
解决方案1:
你需要的是interface
和spl_autoload_register
,先设置一个interface,要求必须实现run
方法,然后规定一个类命名规则比如必须Plugin结尾,以及类文件的加载规则比如必须都放置在plugin目录,然后通过spl_autoload_register
注册加载逻辑即可
interface IPlugin {
public function run();
}
class DemoPlugin implements IPlugin {
public function run(){
//do sth
return 'this is demo';
}
}
spl_autoload_register(function($class){
if($class是Plugin结尾){
include 'plugin/' . $class . '.php';
}
});