Локализация сообщений в Laravel
Давайте теперь выполним локализацию сайта и кроме английского языка добавим, например, еще и русский.
Для этого вам нужно из папки /en/
скопировать все файлы в папку /ru/.
А затем открыть все скопированные файлы
и перевести все английские сообщения
на русские.
Давайте посмотрим на примере.
Пусть у нас был файл test.php,
а в нем следующее сообщение:
<?php
return [
'error' => 'my error message',
];
?>
Копируем этот файл в папку /ru/
и выполняем перевод сообщения:
<?php
return [
'error' => 'мое сообщение об ошибке',
];
?>
Теперь выведем в представлении наше сообщение:
<p>
{{ __('test.error') }}
</p>
Сообщение будет выводиться на языке активной локали. То есть, если у вас сейчас включена английская локаль, то сообщение будет по-английски, а если включена русская - то по-русски.
Давайте убедимся в этом:
<?php
use Illuminate\Support\Facades\App;
class TestController extends Controller
{
public function index()
{
App::setLocale('ru'); // 'en' или 'ru'
return view('test.index');
}
}
?>
Локализуйте ваши сообщения на другой язык.
Задавайте различные локали в действии вашего контроллера. Убедитесь, что сообщения будут выводиться на разных языках.