Download the PHP package gpalyan/dto-forge without Composer

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

PHP DTO Package

Tests codecov Latest Stable Version License

A flexible and powerful Data Transfer Object (DTO) library for PHP that provides validation, type casting, default value generation, and convenient data manipulation methods.

Contents

Features

Installation

Basic Usage

Creating DTOs

All DTOs must extend BaseDto:

Magic Methods

DTOs automatically provide getters, setters, and checkers for all properties without explicit method definitions. You don't need to manually create getter/setter methods - they are generated automatically based on property names using camelCase convention.

Filling Data

Merging DTOs

Comparing DTOs

Cloning DTOs

Serialization

Nested DTOs

Validation

Validation is applied via PHP attributes on DTO properties.

Using Built-in Validators

Validation Errors

Get all validation errors that occurred during DTO population:

Creating Custom Validators

Implement PropertyValidatorInterface to create your own validators:

Requirements for custom validators:

Default Value Generation

Generate default values for properties using attributes.

Creating Custom Generators

Implement DefaultValueGeneratorInterface to create your own generators:

Requirements for custom generators:

Type Casting

The package automatically casts values to appropriate types:

Casting Collections

An array property does not know what its items are. To cast each element into a DTO, declare the item type explicitly with the #[CastEachTo] attribute:

Each raw array (or JSON object) is constructed into the given class; values that are already instances of that class are passed through unchanged. Casting is opt-in via this attribute only — docblock @var Item[] annotations are treated as documentation and never drive casting.

Note: #[CastEachTo] and #[ArrayOf] are not meant to be combined on the same property. CastEachTo constructs items from raw data; #[ArrayOf] validates a collection of already-built (e.g. polymorphic) objects without constructing them. In strict mode #[ArrayOf] runs before casting and will reject raw input — pick the one that matches your intent.

Masking

Masking redacts property values on serialization only — the stored DTO value is never changed. It is opt-in per call via the masking flag on toArray() / toJson().

A mask is a PHP attribute implementing PropertyMaskInterface:

Requirements / behavior:

API Reference

Core Methods

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.


All versions of dto-forge with dependencies

PHP Build Version
Package Version
Requires php Version ^8.4
illuminate/contracts Version ^12.0 || ^13.0
illuminate/support Version ^12.0 || ^13.0
ext-ctype 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 gpalyan/dto-forge contains the following files

Loading the files please wait ...