Download the PHP package methorz/http-dto without Composer

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

methorz/http-dto

Automatic HTTP ↔ DTO conversion with validation for PSR-15 applications

CI codecov PHPStan PHP Version

What is this?

This package provides automatic Data Transfer Object (DTO) handling for PSR-15 middleware applications (Mezzio, Laminas) using the DtoHandlerWrapper pattern. It eliminates boilerplate code by:

Key Innovation: The DtoHandlerWrapper pattern wraps your DtoHandlerInterface implementations, handling all DTO concerns without requiring global middleware in your pipeline.

Installation

Quick Example

Before (Manual Boilerplate)

After (Automatic! ✨)

Features

1. Automatic Request → DTO Mapping

Define Request DTOs with Symfony Validator attributes:

2. Automatic DTO → Response Serialization

Define Response DTOs with JsonSerializableDto:

3. Handler with Direct DTO Parameters

Implement DtoHandlerInterface and use __invoke():

Setup

1. Register DtoHandlerWrapperFactory in ConfigProvider

2. Wrap Your Handlers in Routes

Use DtoHandlerWrapperFactory to wrap your DtoHandlerInterface implementations:

Complete Flow

Key Benefits of DtoHandlerWrapper Pattern:

Error Handling

The middleware automatically handles validation errors:

Benefits

For Handlers

✅ Return DTOs directly (not ResponseInterface) ✅ No ApiResponse wrapper calls ✅ No manual ->toArray() calls ✅ Perfect type safety ✅ Ultra clean (often one line!)

For Response DTOs

✅ Control their own HTTP status code ✅ Self-serializing (jsonSerialize()) ✅ Single Responsibility Principle

For Testing

✅ Test handler returns actual DTO ✅ No mocking ApiResponse ✅ Test serialization separately ✅ More maintainable

For Architecture

✅ Perfect symmetry: Request DTOs IN, Response DTOs OUT ✅ Consistent pattern across all handlers ✅ Type-safe end-to-end

Requirements

Related Packages

This package is part of the MethorZ HTTP middleware ecosystem:

Package Description
methorz/http-dto Automatic HTTP ↔ DTO conversion (this package)
methorz/http-problem-details RFC 7807 error handling middleware
methorz/http-cache-middleware HTTP caching with ETag support
methorz/http-request-logger Structured logging with request tracking
methorz/openapi-generator Automatic OpenAPI spec generation from DTOs

These packages work together seamlessly in PSR-15 applications.

License

MIT License. See LICENSE file for details.

Author

Thorsten Merz


Made with ❤️ for clean, type-safe APIs


All versions of http-dto with dependencies

PHP Build Version
Package Version
Requires php Version ~8.4.27 || ~8.5.12
psr/container Version ^2.0
psr/http-factory Version ^1.0
psr/http-message Version ^1.0 || ^2.0
psr/http-server-handler Version ^1.0
psr/http-server-middleware Version ^1.0
ramsey/uuid Version ^4.9
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 methorz/http-dto contains the following files

Loading the files please wait ...