Dropped some stuff, added some stuff

This commit is contained in:
Josh Sherman 2019-01-03 00:00:04 -06:00
parent 405b5a404d
commit 348a5c9685
No known key found for this signature in database
GPG key ID: 55B058A80530EF22

View file

@ -6,33 +6,12 @@
Lorem ipsum generator in PHP without dependencies. Compatible with PHP 5.3+. Lorem ipsum generator in PHP without dependencies. Compatible with PHP 5.3+.
## Origins [![Become a Patron](https://joshtronic.com/images/become-patron.png)](https://www.patreon.com/joshtronic)
Once upon a time, I was attempting to find a lorem ipsum generator over on
[Packagist](https://packagist.org/search/?q=lorem%20ipsum). I was presented with
many options, and some of those options were good. Unfortunately, the bulk of
those options depended on Symphony or the Zend Framework. This wouldnt have
been a big deal but under the circumstances, I wanted something that was not
tightly coupled to these frameworks because I wanted to use the generator in my
_own_ framework.
I had decided to use
[badcow/lorem-ipsum](https://packagist.org/packages/badcow/lorem-ipsum) because
it did not have any dependencies nor did it rely on any external APIs. As I
started to use the library, I found that I was going to have to fight with it to
get it to do what I wanted. After digging through the code, I realized that I
was going to end up gutting most of it to bend it to my will. I know when you
overhaul someones code the likelihood of them accepting a pull request goes
down dramatically, hence building this library while taking cues from its
predecessor.
Also, the aforementioned package had a bunch of “setter” and “getter” methods
that were grossing me out :scream:
## Installation ## Installation
The preferred installation method is via `composer`. First add the following to The preferred installation method is via `composer`. First add the following to
your `composer.json` your `composer.json`:
```json ```json
"require": { "require": {
@ -40,7 +19,7 @@ your `composer.json`
} }
``` ```
Then run `composer update` Then run `composer update`.
## Usage ## Usage
@ -53,25 +32,25 @@ $lipsum = new joshtronic\LoremIpsum();
### Generating Words ### Generating Words
```php ```php
echo '1 word: ' . $lipsum->word(); echo '1 word: ' . $lipsum->word();
echo '5 words: ' . $lipsum->words(5); echo '5 words: ' . $lipsum->words(5);
``` ```
### Generating sentences ### Generating Sentences
```php ```php
echo '1 sentence: ' . $lipsum->sentence(); echo '1 sentence: ' . $lipsum->sentence();
echo '5 sentences: ' . $lipsum->sentences(5); echo '5 sentences: ' . $lipsum->sentences(5);
``` ```
### Generating paragraphs ### Generating Paragraphs
```php ```php
echo '1 paragraph: ' . $lipsum->paragraph(); echo '1 paragraph: ' . $lipsum->paragraph();
echo '5 paragraphs: ' . $lipsum->paragraphs(5); echo '5 paragraphs: ' . $lipsum->paragraphs(5);
``` ```
### Wrapping text with HTML tags ### Wrapping Text with HTML Tags
If you would like to wrap the generated text with a tag, pass it as the second If you would like to wrap the generated text with a tag, pass it as the second
parameter: parameter:
@ -98,7 +77,7 @@ echo $lipsum->words(3, '<li><a href="$1">$1</a></li>');
// Generates: <li><a href="...">...</a></li><li><a href="...">...</a></li><li><a href="...">...</a></li> // Generates: <li><a href="...">...</a></li><li><a href="...">...</a></li><li><a href="...">...</a></li>
``` ```
### Return as an array ### Return as an Array
Perhaps you want an array instead of a string: Perhaps you want an array instead of a string:
@ -116,11 +95,9 @@ print_r($lipsum->wordsArray(5, 'li'));
## Assumptions ## Assumptions
Instead of having an option as to whether or not a string should start the The first string generated will always start with the traditional "Lorem ipsum
generated output with “Lorem ipsum dolor sit amet, consectetur adipiscing elit.” dolor sit amet, consectetur adipiscing elit". Subsequent strings may contain
a few assumptions are baked in. The first string generated will always start those words but will not explicitly start with them.
with the traditional “Lorem ipsum…”. Subsequent strings may contain those words
but will not explicitly start with them.
## Contributing ## Contributing
@ -129,3 +106,14 @@ pull requests.
Unit tests are required for all contributions. You can run the test suite from Unit tests are required for all contributions. You can run the test suite from
the `tests` directory simply by running `phpunit .` the `tests` directory simply by running `phpunit .`
## Credits
`php-loremipsum` was originally inspired by
[badcow/lorem-ipsum](https://packagist.org/packages/badcow/lorem-ipsum) with a
goal of being a dependency free lorem ipsum generator with flexible generation
options.
## License
MIT