Этот валидатор позволяет вам проверить, является ли данное значение не пустым. Это часто полезно при работе с элементами формы или другим пользовательским вводом. Вы можете использовать этот валидатор, чтобы убедиться, что пользователь заполнил поле и оно не пустое.
По умолчанию этот валидатор работает иначе, чем вы ожидаете, работая с PHP функцией empty(). В частности, этот валидатор будет оценивать как целое число 0, так и строку «0» как пустые.
Вам может не подойти это поведение и, например, в вашем случае 0 не должен считаться пустым. Для таких случаев в валидаторе NotEmpty вы можете задать некоторые настройки.
type: Устанавливает тип проверки, которая будет выполнена.
boolean: Возвращает false, когда логическое значение равно false.
integer: Возвращает false, когда задано целое число 0. По умолчанию эта проверка не активирована и возвращает true для любых целочисленных значений.
float: Возвращает false, когда задано значение с плавающей запятой 0.0. По умолчанию эта проверка не активирована и возвращает true для любых значений с плавающей запятой.
string: Возвращает false, когда задана пустая строка.
zero: Возвращает false, когда задан один символ ноль ('0').
empty_array: Возвращает false, когда задан пустой массив.
null: Возвращает false, когда задано значение null.
php: Возвращает false везде, где PHP empty () возвращает true.
space: Возвращает false, если задана строка, содержащая только пробел.
object: Возвращает true. false будет возвращено, когда объект не разрешен, но объект задан.
object_string: Возвращает false, когда объект задан, а его метод __toString () возвращает пустую строку.
object_count: Возвращает false, когда объект задан, он реализует Countable, и его количество равно 0.
all: Возвращает false для всех вышеперечисленных типов.
Рассмотрим пример как передавать эти параметры в валидатор.
Как видите, для валидатора NotEmpty задан массив настроек, в нем передается параметр type со значениями из списка выше (обрабатываемые типы).