Skip to content
This repository has been archived by the owner on Jan 31, 2020. It is now read-only.

Commit

Permalink
Merge branch 'hotfix/209' into develop
Browse files Browse the repository at this point in the history
Forward port #209
  • Loading branch information
weierophinney committed Feb 1, 2018
2 parents 1a55f37 + 224d55e commit 22f93ab
Show file tree
Hide file tree
Showing 3 changed files with 52 additions and 0 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,9 @@ All notable changes to this project will be documented in this file, in reverse
to the IBAN validator for performing SEPA validation against Croatia and San
Marino.

- [#209](https://github.com/zendframework/zend-validator/pull/209) adds
documentation for the `Explode` validator.

### Changed

- Nothing.
Expand Down
48 changes: 48 additions & 0 deletions doc/book/validators/explode.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# Explode Validator

`Zend\Validator\Explode` executes a validator for each item exploded from an
array.

## Supported options

The following options are supported for `Zend\Validator\Explode`:

- `valueDelimiter`: Defines the delimiter used to explode values from an array.
It defaults to `,`. If the given value is an array, this option isn't used.
- `validator`: Sets the validator that will be executed on each exploded item.
This may be a validator instance, or a validator service name.

## Basic usage

To validate if every item in an array is in a specified haystack:

```php
$inArrayValidator = new Zend\Validator\InArray([
'haystack' => [1, 2, 3, 4, 5, 6],
]);

$explodeValidator = new Zend\Validator\Explode([
'validator' => $inArrayValidator
]);

$explodeValidator->isValid([1, 4, 6]); // returns true
$explodeValidator->isValid([1, 4, 6, 8]); // returns false
```

## Exploding strings

To validate if every e-mail in a string is contained in a list of names:

```php
$inEmailListValidator = new Zend\Validator\InArray([
'haystack' => ['[email protected]', '[email protected]', '[email protected]'],
]);

$explodeValidator = new Zend\Validator\Explode([
'validator' => $inEmailListValidator,
'valueDelimiter' => ','
]);

$explodeValidator->isValid('[email protected],[email protected]'); // returns true
$explodeValidator->isValid('[email protected],[email protected]'); // returns false
```
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ pages:
- "Db\\RecordExists and Db\\NoRecordExists": validators/db.md
- Digits: validators/digits.md
- EmailAddress: validators/email-address.md
- Explode: validators/explode.md
- GreaterThan: validators/greater-than.md
- Hex: validators/hex.md
- Hostname: validators/hostname.md
Expand Down

0 comments on commit 22f93ab

Please sign in to comment.