我创建了文件夹名称 - Birds并在此文件夹中创建了类Birds.php,然后将其添加到composer.json,
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/",
"Birds\\": "Birds/",
}
},
要加载我必须运行 - composer dump-autoload -o并且第一次拿到该文件夹就没问题了,但后来我创建了这样的新接口类:
namespace Birds\Validator;
interface BadgeInterface
{
public function test();
}
接口类在运行composer dump-autoload之前不能正常工作,
我的问题是为什么我每次都需要这样做?我正在使用laravel作为框架。
由于
答案 0 :(得分:1)
这就是composer
的工作原理。 Laravel只是一个PHP框架,因此无法一直运行composer
或其他工具。
如果您需要随时自动添加文件,可以使用cron
或Laravel's schedule
command。例如,它将每5分钟为您完成所有工作。
答案 1 :(得分:0)
这是因为当您创建任何类composer文件夹时,autoload.php无法更新。这导致您需要手动运行它。它清除你在最后一个命令安装任何包时运行是composer autoload更新autoload.php文件中的所有引用