ProviderInterface
in
Контракт-маркер провайдера доменных данных.
Провайдер по соглашению принимает разделяемый контекст (случайность, локаль, инфлектор, ресурсы) первым аргументом конструктора и предоставляет методы генерации значений. Встроенные провайдеры и пользовательские расширения реализуют этот интерфейс; проще всего — наследованием AbstractProvider, который уже принимает контекст в конструкторе.
Пользовательский провайдер регистрируется в генераторе методом
Generator::extend() и затем доступен как обычный
метод-аксессор: $faker->extend('crypto', MyCrypto::class)->crypto()->coin().