hartmann/resolve-strategy-interface
Composer 安装命令:
composer require hartmann/resolve-strategy-interface
包简介
resolve-strategies allow you to resolve dependencies through a user-defined process
README 文档
README
A strategy allows you to resolve a dependency through a user-defined process.
For example, if there are multiple request classes (CreateUserRequest, DeletePostRequest, ...) that inherit from Request and are created in the same way
(for example using the ::createFromEnvironment method), you can do the following with a ResolveStrategy:
use \Hartmann\ResolveStrategy\ResolveStrategyInterface class ResolveRequestStrategy implements ResolveStrategyInterface { /** * Checks wether the given class can be resolved by this strategy * * @param string $class The fully qualified namespace of the class to be resolved * * @return bool */ public function suitable(string $class): bool { return method_exists($class, 'createFromEnvironment') && preg_match('/^.+?Request$/') === 1; } /** * A strategy allows you to resolve a dependency through a user-defined process. * For example, if a class is instantiated by a static method (e.g. ::createFromEnvironment), this can be resolved by a strategy. * * @param \Psr\Container\ContainerInterface $container The instance of the PSR-11 container * @param string $class The fully qualified namespace of the class to be resolved * * @return object The instance of the requested class */ public function resolve(\Psr\Container\ContainerInterface $container, string $class) { return call_user_func([$class, 'createFromEnvironment'], $container->get('environment')); } }
hartmann/resolve-strategy-interface 适用场景与选型建议
hartmann/resolve-strategy-interface 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 43 次下载、GitHub Stars 达 0, 最近一次更新时间为 2019 年 04 月 23 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 hartmann/resolve-strategy-interface 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 hartmann/resolve-strategy-interface 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 43
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 8
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-04-23