Laravel类包括路径

时间:2014-02-19 07:38:52

标签: php laravel

我想在this tutorial中创建一个BaseMigration类。我已将其保存为app/database/migrations/BaseMigration.php并在其他迁移中进行扩展,但当我尝试通过php artisan migrate运行迁移时出现以下错误:

  

PHP致命错误:在第6行的... \ app \ database \ migrations \ 2014_02_19_071702_create_users_table.php中找不到类'BaseMigration'

显然它无法自动加载它。我如何告诉Laravel在哪里找到它,或者我应该将它移动到哪里以便找到它?

1 个答案:

答案 0 :(得分:2)

通常

composer dump-autoload

修复了这些错误,但有时却没有。

要了解问题是否不在Laravel中,而是在自动加载(Composer甚至PHP)中,请查看

中的文件
vendor/composer/*

如果您的文件没有使用PSR-0,PSR-4或文件自动加载,则应该是

vendor/composer/autoload_classmap.php

如果您的文件类列在那里,问题就在您的代码中,您错误地引用了它。在这些文件中,您还可以找到引用它的方式,例如,如果您在其上设置了命名空间,则必须按照它们在这些文件上的显示方式使用它。

如果没有列出,问题在于负责自动加载的人:Composer(甚至可能是PHP),您可以刷新它以尝试修复它:

 rm -rf vendor
 rm composer.lock
 composer install