我有一个遗留应用程序,它使用spl_autload来加载类(它们没有名称空间)
<?php
spl_autoload_extensions('.class.php,.php');
set_include_path(
$listOfDir
);
spl_autoload_register();
// require composer autoloader
// can't place that line before the call spl_autoload_register without breaking everything.
require __DIR__ . "/../vendor/autoload.php";我们最近介绍了composer和Symfony container、dependency-injection和config组件。
我试图实现的是通过composer加载camelcase类(所有新类都使用camel案例来识别新的和遗留的代码),而不会导致BC中断。
,你有关于如何让这个工作的线索吗?新类必须有命名空间吗?
PS:新的类将传播“吨”的文件夹。项目规模为700 000 LOC。
发布于 2015-07-16 16:20:22
因此,我所做的就是将新类放入一个src/文件夹中,添加一个命名空间,并在composer.json中添加PSR-4。
因为spl_autoload不适用于camelcase类,所以我对此没有意见。:-)
"autoload": {
"psr-4": {
"MyNamespace\\NotLegacy\\": "src/"
}
}https://stackoverflow.com/questions/31458450
复制相似问题