memcrab / json-schema
Json Schema Validator for PHP
Requires
- php: ^7.4 || ^8.0
- ext-json: *
- opis/string: ^2.0.1
- opis/uri: ^1.0
Requires (Dev)
- ext-bcmath: *
- ext-intl: *
- phpunit/phpunit: ^9.0
README
Validate JSON documents
Opis JSON Schema is a PHP implementation for the JSON Schema standard (draft-2020-12, draft-2019-09, draft-07 and draft-06), that will help you validate all sorts of JSON documents, whether they are configuration files or a set of data sent to a RESTful API endpoint.
The library's key features:
- Supports all keywords from all drafts (draft-2020-12 down to draft-06)
- Support for custom PHP filters using
$filters
keyword - Advanced schema reuse using
$map
keyword - Intuitive schema composition using slots
- Support for absolute & relative json pointers
- Support for URI templates
- Support for
$data
keyword - Support for casting
- Support for custom formats and media types
Documentation
The full documentation for this library can be found here. We provide documentation for both JSON Schema standard itself as well as for the library's own API.
License
Opis JSON Schema is licensed under the Apache License, Version 2.0.
Requirements
- PHP ^7.4 || ^8.0
Installation
Opis JSON Schema is available on Packagist and it can be installed from a command line interface by using Composer.
composer require opis/json-schema
Or you could directly reference it into your composer.json
file as a dependency
{ "require": { "opis/json-schema": "^2.2" } }