instantiator (doctrine/instantiator)
Searching Database…
11K ·GitHub
这是什么?
Doctrine Instantiator 是一个小型 PHP 库,可以在不调用类的构造函数或该类任何其他方法的情况下,创建该类的新实例。
它是库还是独立工具?
它是一个很小的 PHP 库,用来作为 Composer 依赖被其他项目引入,而不是独立的应用程序。
怎样把它加入项目?
用 Composer 安装它,然后调用 instantiator 的 API,就能获得任意类的新实例,而不会触发其构造函数。
除了 PHP 和 Composer,还需要别的东西吗?
没有列出额外的依赖;安装它只需要 PHP 和 Composer。
通常是谁在用这个库?
它主要被其他库和框架使用(例如 Doctrine ORM 以及测试和模拟工具),这些场景需要在绕过构造函数逻辑的情况下创建对象。
为什么要跳过类的构造函数?
这在反序列化、模拟(mocking)或 ORM 水合(hydration)等场景中很有用,因为这些场景需要在构造函数参数还未知的情况下先拿到对象实例。
这个项目还在积极维护吗?
它归 Doctrine 组织维护,并设有编码规范、静态分析和基准测试的 CI 工作流,说明它仍在积极更新。
它一直都属于 Doctrine 吗?
不是,它是从 ocramius/instantiator 包迁移过来的,那个包已捐赠给 Doctrine,现已弃用,改用这个库。
这个库有多大?
它是一个非常小、只做单一用途的工具库,自身没有运行时依赖。

