phpsoftbox/validator

Validator component for the PhpSoftBox framework

Maintainers

Package info

github.com/phpsoftbox/validator

pkg:composer/phpsoftbox/validator

Statistics

Installs: 94

Dependents: 7

Suggesters: 0

Stars: 0

Open Issues: 0

dev-master 2026-03-07 10:18 UTC

This package is auto-updated.

Last update: 2026-03-07 10:18:51 UTC


README

Компонент для валидации данных через набор правил‑объектов.

Установка

composer require phpsoftbox/validator

Быстрый старт

<?php

use PhpSoftBox\Validator\Validator;
use PhpSoftBox\Validator\Rule\StringValidation;
use PhpSoftBox\Validator\Rule\IntValidation;

$validator = new Validator();

$result = $validator->validate(
    data: [
        'name' => 'Alex',
        'age' => 17,
    ],
    rules: [
        'name' => [(new StringValidation())->min(2)->max(50)->required()],
        'age' => [(new IntValidation())->min(18)],
    ],
);

if ($result->hasErrors()) {
    $errors = $result->errorBag()->all();
}

Form Validation Base

Для переиспользуемых валидаторов форм доступны:

  • FormValidationInterface
  • AbstractFormValidation

Они позволяют строить form-like валидаторы поверх Validator и использовать единые typed getters (getString, getInt, getBool, ...).

Документация

Режимы остановки

use PhpSoftBox\Validator\ValidationOptions;
use PhpSoftBox\Validator\ValidationStopMode;

$options = new ValidationOptions(stopMode: ValidationStopMode::FIRST_PER_FIELD);