kodcube / invoker
构建和调用类
0.1.1
2016-07-19 08:54 UTC
Requires
- php: >=7.0.0
- container-interop/container-interop: ~1.1
- kodcube/helpers: ^0.1
Requires (Dev)
- phpunit/phpunit: ~4.5
This package is not auto-updated.
Last update: 2024-09-13 22:05:25 UTC
README
这可以构建并调用传递的 classname::method 字符串上的方法。
这个库非常适合命令总线、事件总线或消息总线处理,只需传递一个类名和方法作为字符串,就可以实例化和执行。
用法和示例
构建
$invoker = new KodCube\Invoker\Invoker();
可调用对象
$invoker = new KodCube\Invoker\Invoker(); $result = $invoker('MyClass');
等同于
$class = new MyClass(); $result = $class();
对象上的公共方法
$invoker = new KodCube\Invoker\Invoker(); $result = $invoker('MyClass::myMethod');
等同于
$class = new MyClass(); $result = $class->myMethod();
带有构造函数参数的对象上的公共方法
$invoker = new KodCube\Invoker\Invoker(); $result = $invoker('MyClass::myMethod',null,['arg1','arg2']);
等同于
$class = new MyClass('arg1','arg2'); $result = $class->myMethod();
带有方法参数的对象上的公共方法
$invoker = new KodCube\Invoker\Invoker(); $result = $invoker('MyClass::myMethod',['arg1','arg2']);
等同于
$class = new MyClass(); $result = $class->myMethod('arg1','arg2');
公共静态方法
$invoker = new KodCube\Invoker\Invoker(); $result = $invoker('MyClass::myMethod');
等同于
$result = MyClass::myMethod();