On this page
Caution
The documentation you are viewing is for an older version of this component.
Switch to the latest (v3) version.
Validators
Isbn Validator
Laminas\Validator\Isbn
allows you to validate an ISBN-10 or ISBN-13 value.
Supported options
The following options are supported for Laminas\Validator\Isbn
:
separator
: Defines the allowed separator for the ISBN number. It defaults to an empty string.type
: Defines the allowed ISBN types. It defaults toLaminas\Validator\Isbn::AUTO
. For details, take a look at the section on explicit types.
Basic usage
A basic example of usage is below:
$validator = new Laminas\Validator\Isbn();
if ($validator->isValid($isbn)) {
// isbn is valid
} else {
// isbn is not valid
}
This will validate any ISBN-10 and ISBN-13 without separator.
Setting an explicit ISBN validation type
An example of an ISBN type restriction follows:
use Laminas\Validator\Isbn;
$validator = new Isbn();
$validator->setType(Isbn::ISBN13);
// OR
$validator = new Isbn([ 'type' => Isbn::ISBN13]);
if ($validator->isValid($isbn)) {
// this is a valid ISBN-13 value
} else {
// this is an invalid ISBN-13 value
}
The above will validate only ISBN-13 values.
Valid types include:
Laminas\Validator\Isbn::AUTO
(default)Laminas\Validator\Isbn::ISBN10
Laminas\Validator\Isbn::ISBN13
Specifying a separator restriction
An example of separator restriction:
$validator = new Laminas\Validator\Isbn();
$validator->setSeparator('-');
// OR
$validator = new Laminas\Validator\Isbn(['separator' => '-']);
if ($validator->isValid($isbn)) {
// this is a valid ISBN with separator
} else {
// this is an invalid ISBN with separator
}
Values without separators
This will return
false
if$isbn
doesn't contain a separator or if it's an invalid ISBN value.
Valid separators include:
- `` (empty) (default)
-
(hyphen)
(space)