Как изменить язык сгенерированного текста в fzaninotto/Faker?
В Laravel я использую Faker. ( фзанинотто / фейкер)
Невозможно изменить локаль (язык) сгенерированных текстов.
Мой код:
use Faker\Factory as Faker;
class MySeeder extends Seeder {
public function run() {
$faker = Faker::create('ru_RU');
$randomSentence = $faker->sentence();
...
}
}
Но, как результат $randomSentence
содержит сгенерированный текст из локали по умолчанию ('en_EN').
PS Фейкер обновлен. Папка '\vendor\fzaninotto\faker\src\Faker\Provider\ru_RU' содержит Text.php
1 ответ
Причина, по которой вы не получаете русский текст от sentence()
Метод заключается в том, что он не использует текст из Text.php
,
sentence()
Метод определен в Lorem.php и использует список слов в этом файле. Вам либо нужно использовать realText()
метод или реализовать русскую версию списка слов (который автор Faker уже сказал "нет")
Короче говоря, вам нужно использовать эту строку, чтобы получить русский текст:
$faker = Faker::create('ru_RU');
$randomSentence = $faker->realText();