디버깅 용도로 web.php 에서 특정 클래스를 인스턴스화 해야 되는 경우를 말씀하시는 것 같은데요
컨트롤러에서 주입되는(생성자 주입 or 메소드 주입) 말씀하신 UserRepo의 경우라면 그냥 타입힌트만 잘 해놓으면
알아서 주입되니까 그냥 쓰기만 하면 되죠,
하지만 디버깅 시에 web.php 의 특정 라우트에서는 자동으로 주입이 안되서 어려움을 겪으시는 것 같네요.
$userRepo = \App::make(UserRepo::class) 하시거나,
글로벌 헬퍼 함수로 제공되는 resolve
$userRepo = resolve(UserRepo::class); 처럼 하시면 됩니다.
부연설명 하자면 컨트롤러에서 자동으로 주입되는걸 auto resolving (자동 의존성 주입)이라고 하는데
결국에는 서비스 컨테이너가 의존성을 해결해주는 주체이기 때문인거죠.
https://laravel.kr/docs/5.3/container 를 한번 읽어 보시면 도움 되시리라 생각됩니다.
메뉴얼에 나와있었네요. 자세한 답변 감사드립니다.
생성자에서 __constructor(User $user)
위처럼 의존성을 주입 받는 클래스가 있다고 할 경우
이 클래스를 UserRepo 클래스라고 한다면,
이 UserRepo클래스를 디버깅 목적으로 route, 가령 web.php에서 접근하고 싶은데
$user = new User();
$userRepo = new UserRepo($user);
이렇게 사용하는 것이 바른 방법일까요?