ObjectHydrator
data-transfer-object
ObjectHydrator | data-transfer-object | |
---|---|---|
5 | 16 | |
309 | 2,177 | |
0.0% | - | |
5.7 | 6.4 | |
22 days ago | over 1 year ago | |
PHP | PHP | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ObjectHydrator
-
Generate POPO models from OpenApi specification
- https://github.com/EventSaucePHP/ObjectHydrator or symfony serializer for object hydration
- brick/json-mapper: map JSON data to strongly typed PHP DTOs
-
pjson: a simple JSON <=> PHP8+ data objects library
Have you seen https://github.com/EventSaucePHP/ObjectHydrator ? How is this different/better?
- New: Object Hydration library to create strict objects from raw data
data-transfer-object
- Data-Mapper: A package for fast mapping of strong-typed objects
- brick/json-mapper: map JSON data to strongly typed PHP DTOs
-
A (very) small package to cast a variable to a new type, in including custom classes
Speaking of… https://github.com/spatie/data-transfer-object is dead, does doctrine offer similar functionality?
-
Given a messy class used _heavily_ with a hard time understanding whats going on... how to log stuff in testing / demo??
Once you are confident in the argument types, add them to the methods. If there are too many, create a Data Transfer Object. Also add method return types.
-
Refactoring #5: From arrays to Data Transfer Objects
The benefits of using DTOs are numerous, there's even a package from Spatie for them. See the package's release post and this awesome DTO explanation for a more in-depth take and how to implement and use them in a more sensible way.
-
Leveraging DTOs for JSON database columns as an alternative to additional tables
I opted to use Spatie's DTO package and a bit of additional custom code for easy casting. I decided to map each JSON column to its own DTO, so I created two classes for land and for army.
-
What are peoples thoughts/feelings regarding PHP attributes?
When possible, I surely will try using the spatie/data-transfer-object with attributes to see if I like it.
-
Workflow to keep CHANGELOG up-to-date with Release Notes
Open Source projects using this Action. Mostly my own projects, as I just released the Action. However, Spatie, a huge contributor to open source PHP packages recently added the workflow to their PHP package template; which makes me super proud ♥️
-
Restricting ORM objects to repository classes and DTOs
This spatie lib looks neat too, though it might not be all that static analysis friendly. I guess this doesn't save you from having two classes with the same properties. Seems like it could be worth a shot. Short of inventing a code generation tool I don't know how much better I can do.
- Autoload callback when certain class is called first time
What are some alternatives?
Valinor - PHP library that helps to map any input into a strongly-typed value object structure.
php-dto - A data transfer object inspired by Rust's serde
serializer - Handles serializing and deserializing data structures, including object graphs, into array structures or other formats like XML and JSON.
Serializer - Library for (de-)serializing data of any complexity (supports JSON, and XML)
JsonMapper - Map nested JSON structures to PHP classes
package-skeleton-laravel - A skeleton repository for Spatie's Laravel Packages
doctrine-laminas-hydrator - Doctrine hydrators for Laminas applications
git-auto-commit-action - Automatically commit and push changed files back to GitHub with this GitHub Action for the 80% use case.
Serde - Robust Serde (serialization/deserialization) library for PHP 8.
fram - Fram is a view framework for PHP
pjson - JSON <=> PHP8+ objects serialization / deserialization library