해당 글의 주제
Laravel
언어 설정 변경하기
라라벨의 언어관련 설정은 config/app,php
에서 확인 할 수 있습니다.
기본적으로 언어는 en
으로 설정 되어 있습니다.
'locale' => 'en',
한글로 설정하고싶다면 해당 부분을 ko
로 변경할 수 있습니다.
기본 언어 설정을 변경했다면 해당 언어에 맞는 언어팩을 제공해주어야합니다.
라라벨은 기본적으로 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": "비밀번호 재설정",
// ...생략
}
언어팩을 제공하면 해당 언어에 맞게 메시지들이 변경되어 출력됩니다.
라라벨의 인증 템플릿을 사용하면 영어로된 인증메일을 수신할 수 있습니다.
인증관련 메일은 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.'));
}
기존에는 영어로 발송되던 메일이 한글로 전송되어 오는것을 확인 할 수 있습니다.