$context 다국어 파라미터 치환 컨텍스트 * @param \Throwable|null $previous 이전 예외 */ public function __construct( public readonly string $errorKey, public readonly array $context = [], ?\Throwable $previous = null, ) { $message = __('exceptions.vendor.'.$errorKey, $context); if (is_array($message)) { $message = 'exceptions.vendor.'.$errorKey; } // 권한 거부 등 진단 힌트가 있으면 메시지에 덧붙여 사용자에게 즉시 노출 if (isset($context['hint'])) { $message = (string) $message.' — '.$context['hint']; } parent::__construct((string) $message, 0, $previous); } public function getErrorKey(): string { return $this->errorKey; } public function getContext(): array { return $this->context; } }