Download the PHP package codememory/dto without Composer

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

Codememory DTO

This library is mainly for Symfony, but you can also use it in native PHP. How is this library different from others? The library can automatically collect objects according to the given rules from the data that you specify, basically this is the data from the Request

Install

Injection

Use

Events

Codememory\Dto\Events\AfterAllProcessedTypeDecoratorsEvent - Fires after all types of property decorators have been processed

Codememory\Dto\Events\AfterProcessedClassDecoratorsEvent - Fires after all class decorators have been processed

Codememory\Dto\Events\AfterProcessedTypeDecoratorsEvent - Fires after each type of decorator has been processed

Codememory\Dto\Events\BeforeAllProcessedTypeDecoratorsEvent - Fires before all types of property decorators are processed

Codememory\Dto\Events\BeforeProcessedClassDecoratorsEvent - Fires before class decorators are processed

Codememory\Dto\Events\BeforeProcessedTypeDecoratorsEvent - Fires before the next type of property decorator is processed

Warnings

DTO does not support optional parameters, all parameters must be required and every key in data must exist at the time of passing to the manager

How to send Request Body?

No one knows what parameters will be passed from the client to the server. To avoid getting exceptions or fatal errors, you should do validation before mapping data. This library works well with different types of decorators, which will allow you to manage the priorities of processing decorators and after processing a particular type of decorator you can use events to validate the data before it is set to the object properties.

Example

We will use Symfony Validator for validation. The necessary decorator already exists inside the library, which will be able to collect all the constreints in one place

SymfonyValidation decorator has type Codememory\Dto\Interfaces\SymfonyValidationDecoratorTypeInterface this type of decorators is registered with priority 0, which will allow all decorators with this type to work before all others.

Listener for processing all contraints

You don't have to use the SymfonyValidation decorator, you can write your own. As an example, we show you the Symfony Validation decorator for Symfony Validation

Decorator

Decorator Handler

getClassExecutionContext returns the class context that is in effect at the time of one hydration, if there is a nesting in the object, the context for the nested object will be different.


All versions of dto with dependencies

PHP Build Version
Package Version
Requires php Version >=8.3
codememory/reflection Version ^3.0
psr/event-dispatcher Version ^1.0
symfony/validator Version ^7.2
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 codememory/dto contains the following files

Loading the files please wait ....