Valinor
Safe
Valinor | Safe | |
---|---|---|
10 | 7 | |
1,236 | 2,306 | |
1.2% | 0.4% | |
8.8 | 0.0 | |
11 days ago | 6 days 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.
Valinor
-
PHP libraries and tools
cuyz/valinor: PHP library that helps to map any input into a strongly-typed value object structure.
- Data-Mapper: A package for fast mapping of strong-typed objects
- PHP RFC: Deprecations for PHP 8.3
- brick/json-mapper: map JSON data to strongly typed PHP DTOs
-
Hydration / Mapping library
I know there are alternatives like Valinor (https://github.com/CuyZ/Valinor)
-
[Bundle] Automatically map the incoming request data to a DTO and optionally validate it
For the next major version, i'm considering giving the option to use valinor (or anything else) instead of the Serializer component in the next major version. If you have more ideas, let me know.
-
Valinor — Object mapper with strong type support and error handling
You can check the repository on GitHub; there is also a documentation website.
-
pjson: a simple JSON <=> PHP8+ data objects library
See also: Valinor https://github.com/CuyZ/Valinor which does some of what you want, albeit in a more verbose fashion, but without polluting your objects.
- Valinor: a library that maps unstructured input to properly typed objects
Safe
-
PHP libraries and tools
thecodingmachine/safe: All PHP functions, rewritten to throw exceptions instead of returning false
-
Oh boy here we go again…
There are workarounds with some third party libraries, but yeah, it's a pain.
- Which inconsistences of PHP annoy you the most?
-
Any ideas about why json_encode would return empty for a request on local dev, but not empty on server?
- try not to use the built-in json_encode, as it doesnt have proper error handling. Use instead this: https://github.com/thecodingmachine/safe and Safe\json_encode()
-
Native defer & errdefer
Not what you asked for, in modern codebases it's advised to use things like https://github.com/thecodingmachine/safe
-
Use namespaced functions to replace native functions - github.com/rezen/proxyz
The goal of https://github.com/thecodingmachine/safe is different than proxyz. My goal is a method proxy that allows you to override or watch the behaviour of a function from the "global namespace" effortlessly.
-
preg_last_error() and json_last_error()
Safe-PHP redeclares all core PHP functions (in a new namespace) to throw exceptions properly. I use this on almost every project now.
What are some alternatives?
laravel-data - Powerful data objects for Laravel
PHP Dotenv - Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.
Serde - Robust Serde (serialization/deserialization) library for PHP 8.
Symfony VarDumper - Provides mechanisms for walking through any arbitrary PHP variable
serializer - Handles serializing and deserializing data structures, including object graphs, into array structures or other formats like XML and JSON.
Expose - A beautiful, fully open-source, tunneling service - written in pure PHP
ObjectHydrator - Object Hydration library to create Command and Query objects.
phpstan-safe-rule - A PHPStan rule to be used with the thecodingmachine/safe package
Psalm - A static analysis tool for finding errors in PHP applications
Symfony Dotenv - Registers environment variables from a .env file
data-transfer-object - Data transfer objects with batteries included
Yo! Symfony TOML - A PHP parser for TOML