Skip to main content

Available Types of Data Generation

DBContextSeeder provides a wide set of built-in seeders organized by category. Each seeder represents a type of data that can be automatically generated and inserted into your database.

Use these seeders with the TableSeeder fluent API to quickly define realistic and diverse data for testing and development.


πŸ“‡ Personal​

SeederDescription
EmailSeederGenerates random email addresses
FirstNameSeederGenerates first names
FullNameSeederGenerates full names
LastNameSeederGenerates last names
PasswordSeederGenerates or hashes passwords
PhoneNumberSeederGenerates phone numbers
TitleSeederGenerates name titles (Mr., Dr.)
UsernameSeederGenerates usernames

πŸ•’ Temporal​

SeederDescription
DateSeederGenerates random dates
TimezoneSeederGenerates timezones (e.g., UTC+1)

🏒 Company​

SeederDescription
CompanyNameSeederGenerates company names

πŸ’° Currency​

SeederDescription
CurrencyCodeSeederGenerates currency codes (USD, EUR)

🌍 Geography​

SeederDescription
AddressSeederFull address
BuildingNumberSeederGenerates building numbers
CitySeederGenerates city names
CountrySeederCountry names
CountryCodeSeederCountry codes (e.g., PT, US)
LatitudeSeederGenerates latitude
LongitudeSeederGenerates longitude
PostcodeSeederGenerates postal codes
StreetAddressSeederFull street address
StreetNameSeederStreet names
StreetSuffixSeederStreet suffixes (Ave, Rd, etc.)

🌐 Internet​

SeederDescription
DomainNameSeederGenerates domain names
Ipv4SeederRandom IPv4 address
Ipv6SeederRandom IPv6 address
LocalIpv4SeederLocal IPv4 addresses
MacAddressSeederMAC addresses
UrlSeederGenerates URLs

πŸ”’ Numbers​

SeederDescription
DigitSeederSingle random digit (0–9)
DigitNotSeederDigit excluding specific values
DigitalNotNullSeederNon-zero digits
FloatSeederFloat values with optional precision
NumberSeederGeneric number generation
NumberBetweenSeederNumbers between a defined range

πŸ’³ Payment​

SeederDescription
CreditCardDetailsSeederGenerates full credit card details
CreditCardExpirationDateSeederGenerates expiration dates
CreditCardNumberSeederValid credit card numbers
CreditCardTypeSeederCard type (Visa, MasterCard, etc.)
IbanSeederGenerates valid IBANs
SwiftBicNumberSeederGenerates SWIFT/BIC codes

πŸ§ͺ Miscellaneous​

SeederDescription
ArraySeederPicks random value from array
BooleanSeederRandom boolean (true/false)
CsvSeederExtracts values from CSV
EmojiSeederGenerates emojis
FileSeederReads values from a file
LanguageCodeSeederISO language codes (e.g., en, pt)
LocaleSeederLocale codes (e.g., pt_PT, en_US)
Md5SeederGenerates MD5 hashes
SequentialNumberSeederGenerates incrementing numbers
Sha1SeederSHA1 hashes
Sha256SeederSHA256 hashes
SqlSeederExecutes raw SQL to fetch values
TimeSeriesSeederGenerates time-based sequences (e.g., for charts)
ValueSeederStatic or fixed value
WeightValuesSeederPicks from a weighted distribution

✏️ Text​

SeederDescription
BothifySeederGenerates a string based on a pattern
LexifySeederGenerates a string based on a pattern
LetterSeederGenerates a random letter
RandomStringSeederGenerates a string of a given size
TextSeederGenerates text of a given size

🧠 Tip​

You don’t have to use these classes directly. Instead, use the convenient fluent syntax from TableSeeder:

$seeder = new TableSeeder('table', 'en_US');
$seeder->email('email');
$seeder->value('password', '123');
$seeder->weightValues('type', ['admin' => 1, 'user' => 10]);