1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
RegExpValidator.php
См. документацию.
1
<?php
2
3
declare(strict_types=1);
4
5
namespace
Bitrix\Main\Validation\Validator;
6
7
use Bitrix\Main\Localization\LocalizableMessage;
8
use Bitrix\Main\Validation\ValidationError;
9
use Bitrix\Main\Validation\ValidationResult;
10
11
class
RegExpValidator
implements
ValidatorInterface
12
{
13
public
function
__construct
(
14
private
readonly
string
$pattern
,
15
private
readonly
int
$flags = 0,
16
private
readonly
int
$offset = 0
17
)
18
{
19
}
20
21
public
function
validate
(mixed $value):
ValidationResult
22
{
23
$result
=
new
ValidationResult
();
24
if
(!is_string($value))
25
{
26
$result
->addError(
new
ValidationError
(
27
new
LocalizableMessage
(
'MAIN_VALIDATION_REG_EXP_INVALID_TYPE'
),
28
failedValidator: $this
29
));
30
31
return
$result
;
32
}
33
34
if
(!preg_match($this->pattern, $value, flags: $this->flags, offset: $this->offset))
35
{
36
$result
->addError(
new
ValidationError
(
37
new
LocalizableMessage
(
'MAIN_VALIDATION_REG_EXP_INVALID'
),
38
failedValidator: $this
39
));
40
}
41
42
return
$result
;
43
}
44
}
Bitrix\Main\Localization\LocalizableMessage
Определения
localizablemessage.php:18
Bitrix\Main\Validation\ValidationError
Определения
ValidationError.php:11
Bitrix\Main\Validation\ValidationResult
Определения
ValidationResult.php:10
Bitrix\Main\Validation\Validator\RegExpValidator
Определения
RegExpValidator.php:12
Bitrix\Main\Validation\Validator\RegExpValidator\__construct
__construct(private readonly string $pattern, private readonly int $flags=0, private readonly int $offset=0)
Определения
RegExpValidator.php:13
Bitrix\Main\Validation\Validator\RegExpValidator\validate
validate(mixed $value)
Определения
RegExpValidator.php:21
$result
$result
Определения
get_property_values.php:14
Bitrix\Main\Validation\Validator\ValidatorInterface
Определения
ValidatorInterface.php:10
$pattern
if(!Loader::includeModule('sale')) $pattern
Определения
index.php:20
bitrix
modules
main
lib
Validation
Validator
RegExpValidator.php
Создано системой
1.14.0