1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
NotEmptyValidator.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
use Countable;
11
12
class
NotEmptyValidator
implements
ValidatorInterface
13
{
14
public
function
__construct
(
15
private
readonly
bool
$allowZero =
false
,
16
private
readonly
bool
$allowSpaces =
false
17
)
18
{
19
}
20
21
public
function
validate
(mixed $value):
ValidationResult
22
{
23
$result
=
new
ValidationResult
();
24
25
if
($this->allowZero && ($value === 0 || $value ===
'0'
))
26
{
27
return
$result
;
28
}
29
30
if
($value instanceof Countable &&
count
($value) === 0)
31
{
32
$result
->addError(
new
ValidationError
(
33
new
LocalizableMessage
(
'MAIN_VALIDATION_NOT_EMPTY_INVALID'
),
34
failedValidator: $this
35
));
36
37
return
$result
;
38
}
39
40
if
(!$this->allowSpaces && is_string($value))
41
{
42
$value = trim($value);
43
}
44
45
if
(empty($value))
46
{
47
$result
->addError(
new
ValidationError
(
48
new
LocalizableMessage
(
'MAIN_VALIDATION_NOT_EMPTY_INVALID'
),
49
failedValidator: $this
50
));
51
}
52
53
return
$result
;
54
}
55
}
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\NotEmptyValidator
Определения
NotEmptyValidator.php:13
Bitrix\Main\Validation\Validator\NotEmptyValidator\__construct
__construct(private readonly bool $allowZero=false, private readonly bool $allowSpaces=false)
Определения
NotEmptyValidator.php:14
Bitrix\Main\Validation\Validator\NotEmptyValidator\validate
validate(mixed $value)
Определения
NotEmptyValidator.php:21
$result
$result
Определения
get_property_values.php:14
Bitrix\Main\Validation\Validator\ValidatorInterface
Определения
ValidatorInterface.php:10
count
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
Определения
waybill.php:936
bitrix
modules
main
lib
Validation
Validator
NotEmptyValidator.php
Создано системой
1.14.0