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 errors inside schema using
$error
keyword - 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
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.
Opis JSON Schema is licensed under the Apache License, Version 2.0.
- PHP ^7.4 || ^8.0
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.4"
}
}