Download the PHP package martinstarecek/schematic without Composer

On this page you can find all versions of the php package martinstarecek/schematic. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package schematic

Schematic

Latest Stable Version License Build Status Code Coverage Scrutinizer Code Quality

Schematic is a JSON Schema parser that also supports Plain Old PHP Object (POPO) code generation. These generated models can either be used for as a starting point for domain entities or simply provide additional structure for JSON request bodies.

Strives for PSR-1, PSR-2, and PSR-4 compliance.

Install

Examples

The example/ directory contains a number of examples.

Schema Parsing

Given the following schema in car.json:

First the schema needs to be parsed:

When the schema is an object the properties can be accessed:

And can be checked for required properties:

Array items provide additional details about contents:

Code Generation

Generated classes are extremely basic, plain PHP objects from schemas.

The generator can create an AST from an object schema, as well as additional classes for object properties.

This will create an Acme\Model\Car class that extends Acme\Model. Any object properties in the schema will also be created. Once the classes have been generated they can be written to a directory:

The writer will convert the AST into code, write to src/, and return the files that were created.

Complete Example

Putting it all together, here is a complete example for code generation:

Note: The last parameter to write() the PSR-4 namespace of your project. When provided, this namespace will be removed from the file path.

The source of src/Car.php will be:

And the source of src/Car/Owner.php will be:

Recommendations

Models generated by Schematic do not include functionality to populate the model from JSON. We recommend using using JsonMapper or a similar hydrator.

License

Apache 2.0


All versions of schematic with dependencies

PHP Build Version
Package Version
Requires php Version ~5.6
ext-json Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package martinstarecek/schematic contains the following files

Loading the files please wait ....