solophp / validator
PHP Data Validator
Installs: 140
Dependents: 1
Suggesters: 1
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/solophp/validator
Requires
- php: ^8.1
- giggsey/libphonenumber-for-php-lite: ^8.13
- solophp/contracts: ^1.0
Requires (Dev)
- phpstan/phpstan: ^2.0
- phpunit/phpunit: ^12.0
- squizlabs/php_codesniffer: ^4.0
README
Lightweight PHP validation library with custom rules and messages.
Features
- Built-in Rules — Required, email, phone, min, max, length, numeric, date, and more
- Custom Rules — Extend validation with your own rules via callbacks
- Custom Messages — Override messages globally or per-field with placeholders
- Parameterized Rules — Define rules like
min:8,max:100,in:a,b,c - Phone Validation — International phone validation via libphonenumber
- Lightweight — Minimal dependencies, PSR-4 compliant
Installation
composer require solophp/validator
Quick Example
use Solo\Validator\Validator; $validator = new Validator(); $data = [ 'email' => 'user@example.com', 'username' => 'john_doe', 'age' => 25, ]; $rules = [ 'email' => 'required|email', 'username' => 'required|min:3|max:20', 'age' => 'integer|min_value:18', ]; $errors = $validator->validate($data, $rules); if ($validator->fails()) { print_r($validator->errors()); } else { echo "Validation passed!"; }
Documentation
Requirements
- PHP 8.1+
License
MIT License. See LICENSE for details.