PHPackages                             rtxlabs/data-transformation-bundle - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. rtxlabs/data-transformation-bundle

ActiveSymfony-bundle[Utility &amp; Helpers](/categories/utility)

rtxlabs/data-transformation-bundle
==================================

07PHP

Since Nov 18Pushed 13y agoCompare

[ Source](https://github.com/fesja/DataTransformationBundle)[ Packagist](https://packagist.org/packages/rtxlabs/data-transformation-bundle)[ RSS](/packages/rtxlabs-data-transformation-bundle/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (2)Used By (0)

DataTransformation Bundle
=========================

[](#datatransformation-bundle)

Symfony2 Bundle that can help building REST services.

Example
-------

[](#example)

Providing a REST service that returns a list of contacts linked with companies. The service has to deliver something like that:

```
[{
    "id": 1181,
    "address": null,
    "email": "max.mustermann@dtb.com",
    "firstname": "Max",
    "lastname": "Mustermann",
    "company": 7
} , {
    "id" : 1177,
    "address" : null,
    "email" : "uwe.klawitter@dtb.com",
    "firstname" : "Uwe",
    "lastname" : "Klawitter",
    "company": 298
}]
```

To generate this, some Doctrine entities have to be loaded from a repository and converted into json. Performing an json\_encode() to on the entities won't work, because the entity contains proxy objects to the company. To solve this, the DoctrineBinder can be used:

```
// loading the entity manager to create the doctrine binder instance
$em = $this->getDoctrine()->getEntityManager();

// create a doctrine binder, bind the models that have been loaded before and execute the binder. The execute
// method will iterate over the models and return an array containing stdClass objects with all values defined
// by getters.
$result = DoctrineBinder::create($em)->bind($models)->execute();

// finally the result has to be converted into json to return it as an response
$json = Dencoder::decode($result);
```

Documentation
-------------

[](#documentation)

- [Installation](DataTransformationBundle/tree/master/Resources/doc/installation.md)
- [Binding objects / entities](DataTransformationBundle/tree/master/Resources/doc/binding_objects.md)
- [Binding collections](DataTransformationBundle/tree/master/Resources/doc/binding_collections.md)
- [Joining referenced entities](DataTransformationBundle/tree/master/Resources/doc/joining.md)
- [Binding data to entities](DataTransformationBundle/tree/master/Resources/doc/binding_to_objects.md)
- [Binding calculated values](DataTransformationBundle/tree/master/Resources/doc/calculation.md)
- [Encode and decode bound values](DataTransformationBundle/tree/master/Resources/doc/dencoder.md)

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 95.2% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/82a09396758cec14e1d4b4d187bcc6480b03a55efc80c575a35c04f2b4c0b076?d=identicon)[fesja](/maintainers/fesja)

---

Top Contributors

[![uklawitter](https://avatars.githubusercontent.com/u/767393?v=4)](https://github.com/uklawitter "uklawitter (40 commits)")[![fesja](https://avatars.githubusercontent.com/u/10658?v=4)](https://github.com/fesja "fesja (2 commits)")

### Embed Badge

![Health badge](/badges/rtxlabs-data-transformation-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/rtxlabs-data-transformation-bundle/health.svg)](https://phpackages.com/packages/rtxlabs-data-transformation-bundle)
```

###  Alternatives

[michael-rubel/laravel-couponables

This package provides polymorphic coupon functionality for your Laravel application.

19590.7k1](/packages/michael-rubel-laravel-couponables)[loadsys/cakephp_sitemap

A CakePHP Plugin for adding automatic XML and HTML Sitemaps to an app

2819.6k](/packages/loadsys-cakephp-sitemap)[mauricerenck/komments

A comment and webmention plugin for Kirby 3

501.2k1](/packages/mauricerenck-komments)[myweb/show-out-of-stock-products

Show out-of-stock product configurations for configurable products on the front end.

131.7k](/packages/myweb-show-out-of-stock-products)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
