Download the PHP package morebec/orkestra-normalization without Composer

On this page you can find all versions of the php package morebec/orkestra-normalization. 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 orkestra-normalization

Normalization

The normalization component allows to easily normalize complex object graphs to arrays of primitives for persistence purposes.

Essentially, it makes transforming POPOs into human-readable, platform independent serializable arrays of primitives a breeze.

It can be used to:

Installation

Usage

Let's take an example of an object graph:

Here's how one can normalize an object:

This last representation can easily be serialized to json, xml, yaml or any other format.

Denormalization

Here's how to convert a normalized object back to an instance of its class:

The process of denormalization works using reflection inspecting an object's structure. In order to know what into what type to denormalize a value to, the normalizer checks for @var annotations on the object for PHP < 7.4, or the declared type for PHP >= 7.4. Therefore, it is important to correctly declare the @var annotations if using an older version of PHP.

Custom normalizers/denormalizer.

Depending on the structure of your objects you might want to personalize the way they are (de)normalized. A common example is with value objects wrapping primitives:

Such object out of the box would be normalized as follows:

For such object, and especially when they are part of an object graph, you might want to normalize them to the primitive they wrap for example.

To perform this you need to specify a custom normalizer/denormalizer pair and add it to your normalizer:

The FluentNormalizer and FluentDenormalizer are the most convenient way to define (De)Normalizers. If you want to have full control over them you can implement the NormalizerInterface and DenormalizerInterface.


All versions of orkestra-normalization with dependencies

PHP Build Version
Package Version
Requires php Version >=7.4
doctrine/instantiator Version 1.*
php-di/phpdoc-reader Version 2.*
ext-json Version *
morebec/orkestra-datetime Version ^2.5.6
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 morebec/orkestra-normalization contains the following files

Loading the files please wait ....