tsquare/classoverrider

使用项目代码库外部的路径覆盖PHP类,以实现可能在更新时被覆盖的自定义修改。

1.0.0 2019-10-08 22:24 UTC

This package is auto-updated.

Last update: 2024-09-17 13:34:48 UTC


README

允许定制无法修改(可能被覆盖)的代码。

指定一个覆盖目录,位于项目代码库外部,其中可以自定义使用类。

覆盖路径中的目录结构应模仿被覆盖的命名空间,超出指定的基础命名空间。

示例

define('CLASSOVERRIDER_PATH', 'overrides_dir');
define('CLASSOVERRIDER_NS', 'Tsquare\\Overriding_Namespace');
define('CLASSOVERRIDER_BASE_NS', 'Tsquare\\Overridden_Namespace');

$foo = new MaybeOverride(Sample::class, 'arg1', 'arg2');