aviator / runnable
此包已被废弃,不再维护。未建议替代包。
静态构造器和具有接口的处理特性。
0.1.0
2017-12-19 15:46 UTC
Requires
- php: >=7.0.0
- aviator/makeable: ^0.1.0
Requires (Dev)
- phpunit/phpunit: ~6.4.0
This package is auto-updated.
Last update: 2024-04-21 19:40:59 UTC
README
概述
此包提供了一个静态构造器和处理接口,以及实现该接口的特质。
安装
通过Composer
composer require aviator/runnable
测试
通过Composer
composer test
用法
使用特质
class Something { use RunnableTrait; }
然后,可以使用Class::run()()
实例化和处理类。静态run
方法返回一个闭包,该闭包接受方法所需的任何参数(默认为get()
)
$closure = Something::run($arg1); $result = $closure($arg2); // Or just: $result = Something::run($arg1)($arg2);
特质还引入了Aviator\Makeable
,因此您可以直接获得静态构造器make()
。
接口是可选的,尽管在组合接口中指定静态构造器存在可能很有用
interface SomeInterface extends Runnable, SomeOtherInterface { /* etc */ }
默认情况下,特质将调用get()
,但可以被覆盖
class Something { use RunnableTrait; protected static $method = 'handle'; public function handle ($arg) { /* etc */ } } $result = Something::run()('arg'); // Calls the handle() method.
延迟静态绑定的魔力意味着您可以在扩展抽象类的类、扩展类的类等上覆盖默认方法
其他
许可证
此包使用MIT许可证(MIT)授权。