JSON validator (based on opis/json-schema)
composer require aipng/json-validator
Simple - validate JSON input against simple JSON schema
use \AipNg\JsonValidator\JsonValidator;
$validator = new JsonValidator;
$validator->validate($jsonData, $jsonSchemaPath);
Validator provides simple mapping of JSON schema indentificators to a directory structure, eg:
- https://example.org/schemas/foo.json ->
/<my-project-schema-path/foo.json
- https://example.org/schemas/bar.json ->
/<my-project-schema-path/bar.json
use \AipNg\JsonValidator\JsonValidator;
$validator = new JsonValidator(10, 'https://example.org/schemas/', '/<my-project-schema-path/');
$validator->validate($jsonData, $jsonSchemaPath);
Register
extensions:
jsonValidator: AipNg\JsonValidator\DI\JsonValidatorExtension
Configure
jsonValidator:
max_errors: 10 # maximum of returned errors
mapping: # maps JSON schema identificators to directory structure
prefix: https://www.example.org/api/schema/
directory: %wwwDir%/../src/schema/