我正在阅读laravel教程,而我所坚持的部分称为"服务容器"基本上我只是抓取一个环境变量并将其吐出到带有dd()die和dump的页面。但是我收到class not found
错误。我知道它一定是个小虫子,但不能弄明白。我试着运行composer dump-autoload
而没有运气。
这是我的代码
routes/web.php
App::bind('App\Billing\Stripe', function(){
return new \App\Billing\Stripe(config('services.stripe.secret'));
});
$stripe = App::make('App\Billing\Stripe');
dd($stripe);
app/billing/Stripe.php
namespace App\Billing;
class Stripe{
protected $key;
public function __construct($key){
$this->key = $key;
}
}
答案 0 :(得分:1)
此处不需要dump-autoload,因为您在psr-4 confiugred文件夹app
内创建了一个新的命名空间。
解决方案是将文件夹billing
重命名为大写字母,因为laravel使用遵循psr-4标准的composer autoload,该标准声明命名空间以区分大小写的方式匹配文件夹名称。
注意:作曲家提供的替代自动加载方案在创建新文件时可能需要composer dump-autoload
或编辑composer.json