首先创建一个服务类 , 我是app目录下自定义一个Myservice 文件夹
<?php
namespace App\Myservice;
class TestService
{
public function setDoc($name)
{
echo "my service facade result is:".$name;
}
}
注册一下服务容器 , 在app\providers\AppServiceProvider.php
public function register()
{
$this->app->singleton('test',function(){ // 设置一个名称 , 和下面的注册门面需一致
return new TestService();
});
}
注册门面模式 ,app下创建facade文件夹 , 然后创建下面的代码 , 其中return的是上一步的别名
<?php
namespace App\Facade;
use Illuminate\Support\Facades\Facade;
class Test extends Facade
{
protected static function getFacadeAccessor()
{
return 'test';
}
}
在控制器中测试一下吧
我的成功了