Skip to content

breda/faker-provider-english-words

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

English Words Provider for PHP's Faker Library

Why English words? Let me explain.

First of all, look at this link

Basically, the default Lorem provider that comes with the library is very limited when generating unique words. The internal lorem-ipsum words-list comes with 182 unique words only.

This provider does just one thing: It extends the default Lorem provider, and changes the word-list with English words (I got the dictionary from here, I removed a couple of lines however), which contain about 400k words.

Install

$ composer require --dev breda/faker-provider-english-words

Usage

// Assuming everything is auto-loaded
// Create faker
$faker = Faker\Factory::create();
// Just make sure the default Lorem provider is not added after this. 
$faker->addProvider(new BReda\Faker\Provider\EnglishWords($faker));

Let's test it out

This will throw this exception Fatal error: Uncaught OverflowException: Maximum retries of 10000 reached without finding a unique value

// Create faker
$faker = Faker\Factory::create();

foreach(range(0, 2000) as $i) {
    echo $faker->unique()->word;
}

This will not throw an exception and will successfully print 200,000 unique words from the English language.

// Create faker
$faker = Faker\Factory::create();
$faker->addProvider(new BReda\Faker\Provider\EnglishWords($faker));

foreach(range(0, 200000) as $i) {
    echo $faker->unique()->word;
}

And that's it!

About

A faker provider for English words.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages