有些Composer包写死了调用路径,有用了各种Final或者Private不给继承,这时候,如不想对这个包做二开,就可以用使用Composer的一些命名空间映射的方法覆盖这个类,以php-m3u8为例
https://github.com/chrisyue/php-m3u8/issues/48#issuecomment-526881470
配置psr-4增加命名空间映射"Chrisyue\\PhpM3u8\\Data\\Value\\Tag\\"到"override/PhpM3u8/Data/Value/Tag"
然后在exclude-from-classmap里面把需要重载的文件排除,然后把需要重载的文件原样原命名空间拷贝过去,dump 一下auto loader 即可