Download the PHP package caper87/json-schema without Composer
On this page you can find all versions of the php package caper87/json-schema. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download caper87/json-schema
More information about caper87/json-schema
Files in caper87/json-schema
Package json-schema
Short Description A library to validate a json schema.
License MIT
Homepage https://github.com/justinrainbow/json-schema
Informations about the package json-schema
JSON Schema for PHP
A PHP Implementation for validating JSON
Structures against a given Schema
.
See json-schema for more details.
Installation
Library
Composer
Usage
Type coercion
If you're validating data passed to your application via HTTP, you can cast strings and booleans to the expected types defined by your schema:
A shorthand method is also available:
Default values
If your schema contains default values, you can have these automatically applied during validation:
With inline references
Configuration Options
A number of flags are available to alter the behavior of the validator. These can be passed as the
third argument to Validator::validate()
, or can be provided as the third argument to
Factory::__construct()
if you wish to persist them across multiple validate()
calls.
Flag | Description |
---|---|
Constraint::CHECK_MODE_NORMAL |
Validate in 'normal' mode - this is the default |
Constraint::CHECK_MODE_TYPE_CAST |
Enable fuzzy type checking for associative arrays and objects |
Constraint::CHECK_MODE_COERCE_TYPES |
Convert data types to match the schema where possible |
Constraint::CHECK_MODE_EARLY_COERCE |
Apply type coercion as soon as possible |
Constraint::CHECK_MODE_APPLY_DEFAULTS |
Apply default values from the schema if not set |
Constraint::CHECK_MODE_ONLY_REQUIRED_DEFAULTS |
When applying defaults, only set values that are required |
Constraint::CHECK_MODE_EXCEPTIONS |
Throw an exception immediately if validation fails |
Constraint::CHECK_MODE_DISABLE_FORMAT |
Do not validate "format" constraints |
Constraint::CHECK_MODE_VALIDATE_SCHEMA |
Validate the schema as well as the provided document |
Please note that using CHECK_MODE_COERCE_TYPES
or CHECK_MODE_APPLY_DEFAULTS
will modify your
original data.
CHECK_MODE_EARLY_COERCE
has no effect unless used in combination with CHECK_MODE_COERCE_TYPES
. If
enabled, the validator will use (and coerce) the first compatible type it encounters, even if the
schema defines another type that matches directly and does not require coercion.