Download the PHP package saritasa/transformers without Composer
On this page you can find all versions of the php package saritasa/transformers. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download saritasa/transformers
More information about saritasa/transformers
Files in saritasa/transformers
Package transformers
Short Description Saritasa custom transformers on top of League/Fractal Library
License MIT
Informations about the package transformers
Data Transformers
Custom Data transformers on top of League/Fractal library.
See Fractal documentation at http://fractal.thephpleague.com/
Laravel 5.x/6.x
Install the package:
If you use Laravel 5.4 or less,
or 5.5+ with package discovery disabled,
add the TransformersServiceProvider service provider in config/app.php
:
This is required for localization to work properly.
Available transformers
IDataTransformer
Interface to unlink dependency from League/Fractal library. Ensure, that every transformer implementation in this library has this interface.
Example:
BaseTransformer
When you just need to convert model to JSON response via Dingo/Api methods, and have no specific formatting requirements, you can just use BaseTransformer. It calls Arrayable->toArray() method. Thus, for Eloquent model result will consist of fields, described as $visible and not $hidden. Additionally converts fields, enumerated in $dates to ISO8061 format.
Example:
ObjectFieldsTransformer
Will output requested fields to result, regardless they described as $hidden or $visible in Eloquent model
Example:
CombineTransformer
Apply multiple transformers in order of arguments;
Example:
LimitFieldsTransformer
Result will first apply ->toArray() method (which acts, respecting Eloquent's $visible and $hidden fields), then limits output to selected fields. This, hidden fields will not get in output, even if listed.
Example:
Exceptions
TransformException
Should be thrown by class, implementing IDataTransformer, if it encounters data, that cannot be transformed.
Example:
TransformTypeMismatchException
Should be thrown, if your transformer expects model of a certain type, but gets another class.
Utility Classes
DtoModel
Allows you to use pure DTO models instead of Eloquent, while using Fractal for collection transformation.
Contributing
- Create fork, checkout it
- Develop locally as usual. Code must follow PSR-1, PSR-2 - run PHP_CodeSniffer to ensure, that code follows style guides
- Cover added functionality with unit tests and run PHPUnit to make sure, that all tests pass
- Update README.md to describe new or changed functionality
- Add changes description to Semantic Versioning convention to determine next version number.
- When ready, create pull request
Make shortcuts
If you have GNU Make installed, you can use following shortcuts:
- (instead of ) - run static code analysis with PHP_CodeSniffer to check code style
- (instead of ) - fix code style violations with PHP_CodeSniffer automatically, where possible (ex. PSR-2 code formatting violations)
- (instead of ) - run tests with PHPUnit
-
- instead of
- or just without parameters - invokes described above install, cs, test tasks sequentially - project will be assembled, checked with linter and tested with one single command
Resources
- Bug Tracker
- Code
- Changes History
- Authors
All versions of transformers with dependencies
illuminate/database Version >=5.0 <12.0
illuminate/support Version >=5.0 <12.0
league/fractal Version ^0.17|^0.20
saritasa/php-common Version ^1.0