PHPackages                             anshu-krishna/data-validator - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Validation &amp; Sanitization](/categories/validation)
4. /
5. anshu-krishna/data-validator

ActiveLibrary[Validation &amp; Sanitization](/categories/validation)

anshu-krishna/data-validator
============================

A PHP library for simplifying complexly-structured-data validation.

2.8.1(1y ago)01993MITPHPPHP &gt;=8.1

Since Oct 22Pushed 1y ago1 watchersCompare

[ Source](https://github.com/anshu-krishna/PHP-Data-Validator)[ Packagist](https://packagist.org/packages/anshu-krishna/data-validator)[ RSS](/packages/anshu-krishna-data-validator/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (10)Dependencies (1)Versions (22)Used By (3)

PHP Data-Validator
==================

[](#php-data-validator)

A PHP library for simplifying complexly-structured-data validation.

***Note: Version &gt;=2.0 is incompatible with older versions.***

### Installation

[](#installation)

```
composer require anshu-krishna/data-validator

```

Features:
---------

[](#features)

- Supported types:

    - `bool` : Boolean value
    - `email` : String containing an email address
    - `float` : Float value
    - `hex` : String containing a hex value
    - `int` : Int value
    - `ipv4` : String containing an IPv4 address
    - `ipv6` : String containing an IPv6 address
    - `mac` : String containing a MAC address
    - `mixed` : Any value
    - `null` : Null value
    - `number` : Int or Float value
    - `string` : String value
    - `timestamp` : String containing a timestamp.
        eg: '2021-01-31', 'today', 'yesterday', '01-Jan-2021', 'January 1, 2021 05:00:10 AM GMT+05:30', etc.
    - `timestamp_utc` : String containing a timestamp (it will be converted to UTC timezone).
        eg: '2021-01-31', 'today', 'yesterday', '01-Jan-2021', 'January 1, 2021 05:00:10 AM GMT+05:30', '2024-06-15T20:12:52+05:30:10', etc.
    - `unsigned` : Int &gt;= 0
    - `url` : String containing a URL
    - `uuid` : String containing a UUIDv4
- Custom data types can also be added. For example see `./examples`
- Multiple alternative data types can be set for a data item. eg: `'int|float|null'`, `'ipv4|ipv6'`, etc.
- Supports Ranger/Formatter for validated data

Example:
--------

[](#example)

```
