starbug / resource-locator
从模块列表中定位文件和类。
v0.9.1
2021-01-12 07:17 UTC
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-12 15:28:26 UTC
README
ResourceLocator 类在目录和命名空间中定位文件和类。
基本示例
use Starbug\ResourceLocator\ResourceLocator; $namespaces = [ "Starbug\Core", "Starbug\Log", "Starbug\State", "Starbug\Var" ] $paths = [ "core", "modules/log", "modules/state", "var" ] $locator = new ResourceLocator(dirname(__FILE__)); $locator->setNamespaces($namespaces); $locator->setPaths($paths); // This will check each module for a file at the path // "etc/config.json" and return an array of matches. // For instance, if core and log both contained the file, // we would get: // [ // "core/etc/config.json", // "modules/log/config.json" // ] $locator->locate("config.json", "etc"); // This will check each module namespace and return // the first one with a class named AdminController. // For example, Starbug\Log\AdminController. $locator->className("admin", "Controller");