wp-cli / autoload-splitter
用于将生成的自动加载器拆分为两个不同部分的 Composer 插件。
Requires
- composer-plugin-api: ^1.1
README
⛔️ 从 WP-CLI v2.0.0 开始,此包已过时 ⛔️
这是一个为 WP-CLI 定制的自动加载器生成器,它可以生成两个独立的自动加载器,将可自动加载的类分开。这允许在代码执行路径的不同时间注册这些独立的可自动加载类组。
使用默认设置,它将生成以下两个文件
vendor/autoload_framework.phpvendor/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 文件。