wp-cli / autoload-splitter
用于将生成的自动加载器拆分为两个不同部分的 Composer 插件。
Requires
- composer-plugin-api: ^1.1
README
⛔️ 从 WP-CLI v2.0.0 开始,此包已过时 ⛔️
这是一个为 WP-CLI 定制的自动加载器生成器,它可以生成两个独立的自动加载器,将可自动加载的类分开。这允许在代码执行路径的不同时间注册这些独立的可自动加载类组。
使用默认设置,它将生成以下两个文件
vendor/autoload_framework.php
vendor/autoload_commands.php
使用方法
在您的项目 composer.json
中,要求 wp-cli/autoload-splitter
,然后根据需要添加 "extra"
以自定义默认行为
{ "require": { "wp-cli/autoload-splitter": "^0.1" }, "extra": { "autoload-splitter": { "splitter-logic": "WP_CLI\\AutoloadSplitter", "splitter-location": "php/WP_CLI/AutoloadSplitter.php", "split-target-prefix-true": "autoload_commands", "split-target-prefix-false": "autoload_framework" } } }
在下次更新/安装后,您将同时拥有 vendor/autoload_framework.php
和 vendor/autoload_commands.php
文件,您可以根据需要简单地包含并使用它们来自动加载类组。
有效的 "extra" 键
您可以通过在 "autoload-splitter"
根键下提供 "extra"
键来配置自动加载拆分器。
-
"splitter-logic"
:包含拆分逻辑的类的完全限定名称。该类将使用两个参数
__invoke()
调用,即完全限定的类名称以及类的源文件路径。 -
"splitter-location"
:拆分逻辑类源文件的位置。当该类文件未通过自动加载提供给 Composer 插件时,使用它来手动要求类文件。
-
"split-target-prefix-true"
:用于生成包含通过拆分逻辑评估为
true
的类的自动加载文件的名称前缀。 -
"split-target-prefix-false"
:用于生成包含通过拆分逻辑评估为
false
的类的自动加载文件的名称前缀。
当前限制
"psr-0"
& "psr-4"
自动加载器
为了能够单独处理类,此 Composer 插件将所有 PSR-0 和 PSR-4 自动加载器转换为用于拆分自动加载功能的类映射。这类似于生成标准自动加载器时的 --optimized
开关。在开发过程中,您需要更改类名称或位置后重新运行自动加载生成,以便更新拆分自动加载器。
要重新生成自动加载器,只需从项目的根目录运行 composer dump-autoload
。
"files"
自动加载器
实际上,“files” 自动加载部分不是一个真正的自动加载器。当自动加载器被触发时,这些文件会积极包含,因此在这个 Composer 插件中,它们被简单地忽略。
许可证
本代码采用MIT许可证发布。
有关完整的版权和许可证信息,请查看与源代码一起分发的 LICENSE
文件。