신규프로젝트 - 2. 언어팩 설정

madstone-dev·2022년 2월 26일
0

신규 프로젝트

목록 보기
2/2
post-thumbnail

해당 글의 주제
Laravel 언어 설정 변경하기

목표

  • 언어 설정 변경하기

1. 기본 언어 설정 변경하기

라라벨의 언어관련 설정은 config/app,php 에서 확인 할 수 있습니다.

기본적으로 언어는 en 으로 설정 되어 있습니다.

    'locale' => 'en',

한글로 설정하고싶다면 해당 부분을 ko 로 변경할 수 있습니다.


2. 번역 제공하기

기본 언어 설정을 변경했다면 해당 언어에 맞는 언어팩을 제공해주어야합니다.

라라벨은 기본적으로 lang 폴더에 영어 관련 언어팩을 포함하고 있습니다.

다른 언어팩을 제공하려면 lang 폴더에 해당 언어로 json 파일을 생성해야합니다.

// lang/ko.json
{
  "Whoops!": "앗!",
  "Hello!": "안녕하세요!",
  "Reset Password Notification": "비밀번호 재설정 알림",
  "You are receiving this email because we received a password reset request for your account.": "귀하의 비밀번호 재설정 요청으로 인해 이 메일이 발송되었습니다.",
  "Reset Password": "비밀번호 재설정",
   // ...생략
}

언어팩을 제공하면 해당 언어에 맞게 메시지들이 변경되어 출력됩니다.

3. 예시

라라벨의 인증 템플릿을 사용하면 영어로된 인증메일을 수신할 수 있습니다.

인증관련 메일은 vendor/laravel/framework/src/Illuminate/Auth/Notifications 폴더에서 기본 인증 메일 관련 기능을 확인 할 수 있습니다.

  protected function buildMailMessage($url)
  {
      return (new MailMessage)
          ->subject(Lang::get('Reset Password Notification'))
          ->line(Lang::get('You are receiving this email because we received a password reset request for your account.'))
          ->action(Lang::get('Reset Password'), $url)
          ->line(Lang::get('This password reset link will expire in :count minutes.', ['count' => config('auth.passwords.'.config('auth.defaults.passwords').'.expire')]))
          ->line(Lang::get('If you did not request a password reset, no further action is required.'));
    }

기존에는 영어로 발송되던 메일이 한글로 전송되어 오는것을 확인 할 수 있습니다.


참고

profile
기록보다 기력을

0개의 댓글