Validators
In This Article
IsInt
Zend\I18n\Validator\IsInt
validates if a given value is an integer, using
the locale provided.
Integer values are often written differently based on country or region. For
example, using English, you may write 1234
or 1,234
; both are integer
values, but the grouping is optional. In German, you'd write 1.234
, and in
French, 1 234
.
Zend\I18n\Validator\IsInt
will use a provided locale when evaluating the
validity of an integer value. In such cases, it doesn't simply strip the
separator, but instead validates that the correct separator as defined by the
locale is used.
Basic Usage
$validator = new Zend\I18n\Validator\IsInt();
$validator->isValid(1234); // returns true
$validator->isValid(1234.5); // returns false
$validator->isValid('1,234'); // returns true
By default, if no locale is provided, IsInt
will use the system locale
provide by PHP's Locale
class and the getDefault()
method.
(The above example assumes that the environment locale is set to en
.)
Using a notation not specific to the locale results in a false
evaulation.
Using Locale
$validator = new Zend\I18n\Validator\IsInt(['locale' => 'en_US']);
$validator->isValid(1234); // true
$validator = new Zend\I18n\Validator\IsInt();
$validator->setLocale('en_US');
$validator->isValid(1234); // true
Locale::setDefault('en_US');
$validator = new Zend\I18n\Validator\IsInt();
$validator->isValid(1234); // true
Get Current Value
To get the current value of this option, use the getLocale()
method.
$validator = new Zend\I18n\Validator\IsInt(['locale' => 'en_US']);
echo $validator->getLocale(); // 'en_US'
Default Value
By default, if no locale is provided, IsInt
will use the system locale
provide by PHP's Locale::getDefault()
.
Strict Validation
By default, the value's data type is not enforced.
$validator = new Zend\I18n\Validator\IsInt();
$validator->isValid(1234); // true
$validator->isValid('1234'); // true
To enforced a strict validation set the strict
option to true
.
$validator = new Zend\I18n\Validator\IsInt(['strict' => true]);
$validator->isValid(1234); // true
$validator->isValid('1234'); // false
$validator = new Zend\I18n\Validator\IsInt();
$validator->setStrict(true)
$validator->isValid(1234); // true
$validator->isValid('1234'); // false
Get Current Value
To get the current value of this option, use the getStrict()
method.
$validator = new Zend\I18n\Validator\IsInt(['strict' => true]);
echo $validator->getStrict(); // true
Default Value
The default value of this option is false
.
Found a mistake or want to contribute to the documentation? Edit this page on GitHub!