folha / json-schema
A library to validate a json schema.
1.5.0
2015-09-08 22:28 UTC
Requires
- php: >=5.3.2
Requires (Dev)
README
A PHP Implementation for validating JSON
Structures against a given Schema
.
See json-schema for more details.
Installation
Library
$ git clone https://github.com/justinrainbow/json-schema.git
Dependencies
Composer
(will use the Composer ClassLoader)
$ wget http://getcomposer.org/composer.phar
$ php composer.phar require justinrainbow/json-schema:~1.3
Usage
<?php // Get the schema and data as objects $retriever = new JsonSchema\Uri\UriRetriever; $schema = $retriever->retrieve('file://' . realpath('schema.json')); $data = json_decode(file_get_contents('data.json')); // If you use $ref or if you are unsure, resolve those references here // This modifies the $schema object $refResolver = new JsonSchema\RefResolver($retriever); $refResolver->resolve($schema, 'file://' . __DIR__); // Validate $validator = new JsonSchema\Validator(); $validator->check($data, $schema); if ($validator->isValid()) { echo "The supplied JSON validates against the schema.\n"; } else { echo "JSON does not validate. Violations:\n"; foreach ($validator->getErrors() as $error) { echo sprintf("[%s] %s\n", $error['property'], $error['message']); } }
Running the tests
$ vendor/bin/phpunit