我是laravel 5.2的初学者,我正在尝试创建自定义外墙。为此,我从网站上参考了以下内容
How to create custom facade in laravel 5.2
我在引用中包含了所有内容但是在路由该类时出错了。 我的路线是:
Route::get('/avatar', function(){
$img='<img src="'.GeneralClass::getGravatarURL('raimausam32@gmail.com').'">';
echo $img;
});
但我收到了错误
FatalErrorException in routes.php line 15:
Class&#39; GeneralClass&#39;找不到
我没有一个想法。所以请有人帮助解决这个问题。对其他人来说可能很简单,但我遇到了这个问题。
这是我的申请结构
Facades/GeneralClass.php
<?php
namespace App\Facades;
use Illuminate\Support\Facades\Facade;
class GeneralClass extends Facade{
protected static function getFacadeAccessor() { return 'generalclass'; }
}
Helpers/GeneralClass.php
<?php
namespace App\Helpers;
class GeneralClass {
public function getGravatarURL($email, $s = 80, $d = 'mm', $r = 'g', $img = false, $atts = array())
{
$url = 'http://www.gravatar.com/avatar/';
$url .= md5(strtolower(trim($email)));
$url .= "?s=$s&d=$d&r=$r";
if ($img)
{
$url = '<img src="' . $url . '"';
foreach ($atts as $key => $val)
$url .= ' ' . $key . '="' . $val . '"';
$url .= ' />';
}
return $url;
}
}
Providers/GeneralClassServiceProvider.php
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
class GeneralClassServiceProvider extends ServiceProvider
{
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
//
}
/**
* Register the application services.
*
* @return void
*/
public function register()
{
App::bind('generalclass',function(){
return new \App\Helpers\GeneralClass;
});
}
}