Возвращает тип данных из .env в Laravel - PullRequest
0 голосов
/ 17 января 2020

Я хочу иметь динамические сеялки c, основанные на моем окружении. (например, в тестировании я хочу, чтобы только заполнялось 100 строк, тогда как для локальных это будет 10'000).

Я создал сеялку. php в конфигурации, которая вызывает значения из файла .env .

Когда я использую конфигурацию в моем сеансе, он возвращает строку со значением в .env, которое должно быть целым числом. EG:

.env.local:

SEED_USER_COUNT=10000

config \ seeder. php:

return [
    'user_count' => env('SEED_USER_COUNT', 10),
];

UserSeeder

factory(User::class, config('user_count'))->create();

Выше не работает, и кажется, что config('user_count') возвращает строку "10000", а не целое число 10000

1 Ответ

1 голос
/ 17 января 2020

Приведите вашу переменную к int в файле конфигурации

config / seeder. php

return [
    'user_count' => (int)env('SEED_USER_COUNT', 10),
];

Правильный вызов конфигурации с префиксом файл

UserSeeder

factory(User::class, config('seeder.user_count'))->create();
...