Я пытался зарегистрировать в контейнере Uuid и несколько раз пытался извлечь его из контроллера маршрута, но значение uuid зарегистрировано не первым.
Может кто-нибудь помочь мне понять?
class AppServiceProvider extends ServiceProvider
{
public function boot()
{
if(App::bound('conf')==NULL)
App::instance('conf', Uuid::generate()->string);
}
}
class InstanceController extends Controller
{
public function getUuid()
{
return App::make('conf');
}
}
Мне нужно зарегистрировать уникальное значение или объект, который будет доступен для всех.
Я также пытался ввести этот код:
config(['uuid' => Uuid::generate()->string]);
в методе дескриптора команды Laravel:
class RegisteredInstances extends Command
{
public function handle()
{
config(['uuid' => Uuid::generate()->string]);
}
}
и выполните его, но когда я пытаюсь извлечь uuid из службы, ответ равен нулю.
Теперь я зарегистрировал команду laravel, котораясделайте это:
class RegisteredInstances extends Command
{
.
.
.
public function handle()
{
if(App::bound('conf')==NULL)
App::instance('conf', Uuid::generate()->string);
if(config('uuid2')==NULL)
config(['uuid2' => Uuid::generate()->string]);
}
}
Задача каждую минуту выполняет эту команду, и я пытаюсь извлечь uuid из сервисного контроллера следующим образом:
class InstanceController extends Controller
{
public function getUuid()
{
return App::make('conf');
}
public function getUuid()
{
return config('uuid2');
}
}
Проблема в этом случае заключается в том, чточто контроллер возвращает NULL: