rudra/validation

Rudra framework

Installs: 435

Dependents: 2

Suggesters: 0

Security: 0

Stars: 1

Watchers: 1

Forks: 0

Open Issues: 0

pkg:composer/rudra/validation

v25.12 2025-10-20 10:19 UTC

This package is auto-updated.

Last update: 2025-12-30 08:51:07 UTC


README

PHPunit Maintainability CodeFactor Coverage Status

Rudra-Validation | API

Install / Установка

composer require rudra/validation

Example of usage / Пример использования

use Rudra\Validation\ValidationFacade;

$_SESSION['csrf'][] = '123456';

$processed = [
    'set_without_validation' => ValidationFacade::set('set_without_validation')->run();
    'set_with_data_clearing' => ValidationFacade::sanitize(' <p>String</p> ')->run();
    
    'required' => ValidationFacade::set('required')->required()->run(),
    'integer'  => ValidationFacade::set(12345)->required()->integer()->run(),
    'minimum'  => ValidationFacade::set('12345')->required()->min(5)->run();
    'maximum'  => ValidationFacade::set('12345')->required()->max(5)->run();
    'equals'   => ValidationFacade::set('12345')->equals('12345')->run();
    'email'    => ValidationFacade::email('user@example.com')->run();
    'csrf'     => ValidationFacade::set('123456')->csrf($_SESSION['csrf'])->run();
];

Data is validated in a chain
Данные проверяются по цепочке

For example / Например

ValidationFacade::sanitize(' <p>12345</p> ')->required()->min(3)->max(10)->equals('12345')->run();
ValidationFacade::email('user@example.com')->max(25)->run();

Data validation check / Проверка валидности данных

if (ValidationFacade::approve($processed)) {
    $validated = ValidationFacade::getValidated($processed, ["csrf", "_method"]);
}
getValidated

Gets an array of validated data excluding the keys ["csrf", "_method"]
Получает массив проверенных данных исключая ключи ["csrf", "_method"]

Get all error messages / Получить все сообщения об ошибках

ValidationFacade::getAlerts($processed, ['required']);
getAlerts

Gets an array with error messages excluding the keys ['required']
Получает массив с сообщениями об ошибках исключая ключи ['required']

License

This project is licensed under the Mozilla Public License 2.0 (MPL-2.0) — a free, open-source license that:

  • Requires preservation of copyright and license notices,
  • Allows commercial and non-commercial use,
  • Requires that any modifications to the original files remain open under MPL-2.0,
  • Permits combining with proprietary code in larger works.

📄 Full license text: LICENSE
🌐 Official MPL-2.0 page: https://mozilla.org/MPL/2.0/

Проект распространяется под лицензией Mozilla Public License 2.0 (MPL-2.0). Это означает:

  • Вы можете свободно использовать, изменять и распространять код.
  • При изменении файлов, содержащих исходный код из этого репозитория, вы обязаны оставить их открытыми под той же лицензией.
  • Вы обязаны сохранять уведомления об авторстве и ссылку на оригинал.
  • Вы можете встраивать код в проприетарные проекты, если исходные файлы остаются под MPL.

📄 Полный текст лицензии (на английском): LICENSE
🌐 Официальная страница: https://mozilla.org/MPL/2.0/