PHPackages                             prinsfrank/object-resolver - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Validation &amp; Sanitization](/categories/validation)
4. /
5. prinsfrank/object-resolver

ActiveLibrary[Validation &amp; Sanitization](/categories/validation)

prinsfrank/object-resolver
==========================

From arrays/requests/json to typed and validated objects with ease

v0.0.6(8mo ago)21551[1 issues](https://github.com/PrinsFrank/object-resolver/issues)MITPHPPHP ^8.2CI passing

Since Sep 7Pushed 8mo ago1 watchersCompare

[ Source](https://github.com/PrinsFrank/object-resolver)[ Packagist](https://packagist.org/packages/prinsfrank/object-resolver)[ GitHub Sponsors](https://github.com/PrinsFrank)[ RSS](/packages/prinsfrank-object-resolver/feed)WikiDiscussions main Synced yesterday

READMEChangelog (6)Dependencies (5)Versions (7)Used By (0)

  ![Banner](https://github.com/PrinsFrank/object-resolver/raw/main/docs/images/banner_light.png)Object Resolver
===============

[](#object-resolver)

[![GitHub](https://camo.githubusercontent.com/033a05850537b3c37efb25a0f43132d3d56f34a7a6c61655efbb9d281e000fe9/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f7072696e736672616e6b2f6f626a6563742d7265736f6c766572)](https://github.com/PrinsFrank/object-resolver/blob/main/LICENSE)[![PHP Version Support](https://camo.githubusercontent.com/4de252741bac109885e8b22b73a0d5f36e199403d895b144b935db0311cc1b9e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f7072696e736672616e6b2f6f626a6563742d7265736f6c766572)](https://github.com/PrinsFrank/object-resolver/blob/main/composer.json)[![Packagist Downloads](https://camo.githubusercontent.com/991305d2666126a4d199bc0621d498cbe368f9e16895cde1b292073f8b594726/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f7072696e736672616e6b2f6f626a6563742d7265736f6c766572)](https://packagist.org/packages/prinsfrank/object-resolver/stats)[![codecov](https://camo.githubusercontent.com/ad09f45f44f33cd8db38f42e586810dc949ec877c224a059a9065f48dfe7c5da/68747470733a2f2f636f6465636f762e696f2f67682f5072696e734672616e6b2f6f626a6563742d7265736f6c7665722f6272616e63682f6d61696e2f67726170682f62616467652e7376673f746f6b656e3d5930334e494657455a4c)](https://codecov.io/gh/PrinsFrank/object-resolver)[![PHPStan Level](https://camo.githubusercontent.com/83dd3d35cebed0eab9ee97ff1a5849c1344cda6a8ee9cac2cda20f5aa55b67bd/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048505374616e2d6c6576656c253230392d627269676874677265656e2e7376673f7374796c653d666c6174)](https://github.com/PrinsFrank/object-resolver/blob/main/phpstan.neon)

**Resolve objects from data from requests, json etc**

Setup
-----

[](#setup)

> **Note**Make sure you are running PHP 8.2 or higher to use this package

To start right away, run the following command in your composer project;

`composer require prinsfrank/object-resolver`

Or for development only;

`composer require prinsfrank/object-resolver --dev`

Use cases
=========

[](#use-cases)

Handling incoming requests
--------------------------

[](#handling-incoming-requests)

Given a simple login controller, we have the following request object:

```
