Download the PHP package fi1a/validation without Composer

On this page you can find all versions of the php package fi1a/validation. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package validation

PHP валидация (проверка) значений формы и данных

Latest Version Software License PHP Version Coverage Status Total Downloads

Валидация означает проверку данных, заполняемых пользователем. Пакет предоставляет возможность организовать проверку на стороне сервера после отправки данных формы.

Возможности

Установка

Установить этот пакет можно как зависимость, используя Composer.

Проверка данных полей формы

Для проверки данных полей формы нужно использовать метод класса валидатора . После создания объекта валидации необходимо вызвать метод для проверки переданных значений. При вызове возвращается объект результата проверки .

Пример:

Проверка одного поля

Для проверки одного поля нужно использовать один из классов цепочки правил. Цепочки правил реализует "Fluent interface" для объявления используемых правил.

Цепочка "значение должно удовлетворять всем правилам" ():

Цепочка "значение должно удовлетворять одному из правил" ():

Пример совместного использования цепочек правил. Значение может быть числом большим 10 или строкой с минимальной длиной 2:

Проверка объекта

Вместо массива значений можно передать объект для проверки значений свойств объекта (осуществляется проверка только публичных свойств объекта):

Сообщения об ошибках

Сообщения об ошибках можно задать при создании объекта валидации с помощью метода , передав в него массив с сообщениями, либо позже методами или объекта валидации. Также сообщения можно определить в наборе правил (возвращаемый массив метода ).

Заголовки полей

Заголовки полей можно задать при создании объекта валидации с помощью метода , передав в него заголовки, либо позже методами или объекта валидации. Также заголовки можно определить в наборе правил (возвращаемый массив метода ).

Ошибки

Сообщения об ошибках представлены коллекцией , которую можно получить с помощью метода класса результата проверки .

Доступные методы в коллекции ошибок :

Также доступны все методы коллекции .

Затронутые значения

Затронутые значения представлены коллекцией , которую можно получить с помощью метода класса результата проверки .

Доступные методы в коллекции :

Также доступны все методы коллекции .

Сценарии

Сценарии предназначены для определения какие правила применять к текущему состоянию. Например: при сценарии создания пароль обязателен для заполнения, а при сценарии обновления нет. Это можно определить используя сценарии.

Класс задает к какому сценарию относится цепочка правил.

Аргумент Описание
string $fieldName Имя поля для которого предназначена цепочка правил
?ChainInterface $chain Цепочка правил
string ...$scenario Сценарии для которых применяется цепочка правил

Текущий используемый сценарий передается пятым аргументом в метод make класса Fi1a\Validation\Validator.

Набор правил

Набор правил представляет собой класс реализующий интерфейс .

Используя класс набора правил можно определить:

Пример набора правил:

Использование набора правил по сценарию :

Значение присутствует для валидации (проверки)

По умолчанию большинство правил при валидации (проверке) возвращают true, если значение не присутсвует (за исключением require()). Класс, реализующий интерфейс Fi1a\Validation\Presence\WhenPresenceInterface, определяет по какому критерию будет происходить проверка на присутсвие значения.

Доступны следующие классы:

По умолчанию используется класс Fi1a\Validation\Presence\WhenPresence. Но вы можете передать нужный вам.

Объект, определяющий присутсвие значения, можно установить сразу для всех правил используя метод setPresence:

Правила

alphaNumeric(?WhenPresenceInterface $presence = null)

Значение должно быть буквенно-цифровым

alpha(?WhenPresenceInterface $presence = null)

Является ли значение только буквенным(без чисел)

array(?WhenPresenceInterface $presence = null)

Является ли значение массивом

betweenCount(int $min, int $max, ?WhenPresenceInterface $presence = null)

Проверка на минимальное и максимальное количество элементов в массиве

betweenDate(string $minDate, string $maxDate, ?string $format = null, ?WhenPresenceInterface $presence = null)

Проверка на максимальную и минимальную дату

betweenLength(int $min, int $max, ?WhenPresenceInterface $presence = null)

Проверка на максимальную и минимальную длину строки

between($min, $max, ?WhenPresenceInterface $presence = null)

Проверка на максимальное и мимальное значение

boolean(?WhenPresenceInterface $presence = null)

Является ли значение логическим

date(string $format = null, ?WhenPresenceInterface $presence = null)

Проверка на формат даты

email(?WhenPresenceInterface $presence = null)

Является ли значение email адресом

equalDate(string $equalDate, ?string $format = null, ?WhenPresenceInterface $presence = null)

Проверяет дату на равенство

equal(float $equal, ?WhenPresenceInterface $presence = null)

Проверяет число на равенство

fileSize(string $min, string $max, ?WhenPresenceInterface $presence = null)

Размер загруженного файла.

Указатели на размер:

generic(array $rules, array $messages = [], array $titles = [], ?WhenPresenceInterface $presence = null)

Вложенные правила

url(?WhenPresenceInterface $presence = null)

Валидация (проверка) url адреса

in($presence, ...$in)

Допустимые значения (не строгая проверка значения)

integer(?WhenPresenceInterface $presence = null)

Является ли значение целым числом

json(?WhenPresenceInterface $presence = null)

Является ли значение json-строкой

maxCount(int $max, ?WhenPresenceInterface $presence = null)

Проверка на максимальное количество элементов в массиве

maxDate(string $maxDate, ?string $format = null, ?WhenPresenceInterface $presence = null)

Проверка на максимальную дату

maxLength(int $max, ?WhenPresenceInterface $presence = null)

Проверка на максимальную длину строки

max($max, ?WhenPresenceInterface $presence = null)

Проверка на максимальное значение

mime(WhenPresenceInterface|string $presence, string ...$extensions)

Тип загруженного файла

`

minCount(int $min, ?WhenPresenceInterface $presence = null)

Проверка на минимальное количество элементов в массиве

minDate(string $minDate, ?string $format = null, ?WhenPresenceInterface $presence = null)

Проверка на минимальную дату

minLength(int $min, ?WhenPresenceInterface $presence = null)

Проверка на минимальную длину строки

min($min, ?WhenPresenceInterface $presence = null)

Проверка на минимальное значение

notIn($presence, ...$notIn)

Не допустимые значения (не строгая проверка значения)

null(?WhenPresenceInterface $presence = null)

Является ли значение null

numeric(?WhenPresenceInterface $presence = null)

Является ли значение числом

regex(string $regex, ?WhenPresenceInterface $presence = null)

Проверка на регулярное выражение

requiredIfPresence(?WhenPresenceInterface $presence = null)

Обязательное значение, если передано

required()

Обязательное значение

requiredWith(string ...$fieldNames)

Обязательное значение, если есть значения в полях

same(string $fieldName, ?WhenPresenceInterface $presence = null)

Совпадает ли значение со значением в указанном поле

strictIn($presence, ...$in)

Допустимые значения (строгая проверка значения)

strictNotIn($presence, ...$notIn)

Не допустимые значения (строгая проверка значения)

string(?WhenPresenceInterface $presence = null)

Является ли значение строкой

Пользовательское правило проверки

В библиотеки есть возможность расширить доступные правила проверки. Правило проверки должно реализовывать интерфейс .

Пример реализации пользовательского правила проверки:

Зарегистрируем пользовательское правило в классе валидатора с помощью метода :

И можно использовать пользовательское правило проверки:


All versions of validation with dependencies

PHP Build Version
Package Version
Requires php Version ^7.3 || ^8
ext-json Version *
fi1a/collection Version ^2.0
fi1a/format Version ^2.0
fi1a/tokenizer Version ^1.1
fi1a/hydrator Version ^1.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package fi1a/validation contains the following files

Loading the files please wait ....