PHPackages                             adrotec/odataphpprod - 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. [HTTP &amp; Networking](/categories/http)
4. /
5. adrotec/odataphpprod

ActiveLibrary[HTTP &amp; Networking](/categories/http)

adrotec/odataphpprod
====================

OData Producer for PHP

1.1.0(8y ago)618.0k31MITPHPPHP &gt;=5.3.0

Since Aug 21Pushed 8y ago2 watchersCompare

[ Source](https://github.com/adrotec/odataphpprod)[ Packagist](https://packagist.org/packages/adrotec/odataphpprod)[ RSS](/packages/adrotec-odataphpprod/feed)WikiDiscussions master Synced today

READMEChangelog (2)DependenciesVersions (3)Used By (1)

Project Status: 🚨 Unmaintained 🚨
================================

[](#project-status---unmaintained-)

This project is no longer maintained. We will not be accepting pull requests, addressing issues, nor making future releases.

OData Producer Library for PHP V1.2
===================================

[](#odata-producer-library-for-php-v12)

The OData Producer Library for PHP is a server library that allows to exposes data sources by using the OData Protocol. The OData Producer supports all Read-Only operations specified in the Protocol version 2.0:

- It provides two formats for representing resources, the XML-based Atom format and the JSON format.
- Servers expose a metadata document that describes the structure of the service and its resources.
- Clients can retrieve a feed, Entry or service document by issuing an HTTP GET request against its URI.
- Servers support retrieval of individual properties within Entries.
- It supports pagination, query validation and system query options like $format, $top, $linecount, $filter, $select, $expand, $orderby, $skip .
- User can access the binary stream data (i.e. allows an OData server to give access to media content such as photos or documents in addition to all the structured data)

How to use the OData Producer Library for PHP
---------------------------------------------

[](#how-to-use-the-odata-producer-library-for-php)

Data is mapped to the OData Producer through three interfaces into an application. From there the data is converted to the OData structure and sent to the client. The 3 interfaces required are:

- IDataServiceMetadataProvider: this is the interface used to map the data source structure to the Metadata format that is defined in the OData Protocol. Usually an OData service exposes a $metadata endpoint that can be used by the clients to figure out how the service exposes the data and what structures and data types they should expect.
- IDataServiceQueryProvider: this is the interface used to map a client query to the data source. The library has the code to parse the incoming queries but in order to query the correct data from the data source the developer has to specify how the incoming OData queries are mapped to specific data in the data source.
- IServiceProvider: this is the interface that deals with the service endpoint and allows defining features such as Page size for the OData Server paging feature, access rules to the service, OData protocol version(s) accepted and so on.
- IDataServiceStreamProvider: This is an optional interface that can be used to enable streaming of content such as Images or other binary formats. The interface is called by the OData Service if the DataType defined in the metadata is EDM.Binary.

If you want to learn more about the PHP Producer Library for PHP, the User Guide included with the code (\\docs directory) provides detailed information on how to install and configure the library, it also show how to implement the interfaces in order to build a fully functional OData service.

The library is built using only PHP and it runs on both Windows and Linux.

###  Health Score

33

—

LowBetter than 74% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity27

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 71.4% 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.

###  Release Activity

Cadence

Every ~1007 days

Total

2

Last Release

3272d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b4199914ba7daee564c1b7a2cff5c1a638b1f4e7fac915bcbceec7f5fd9aaa8c?d=identicon)[mrsafraz](/maintainers/mrsafraz)

---

Top Contributors

[![safrazik](https://avatars.githubusercontent.com/u/3174706?v=4)](https://github.com/safrazik "safrazik (5 commits)")[![anuchandy](https://avatars.githubusercontent.com/u/1471612?v=4)](https://github.com/anuchandy "anuchandy (2 commits)")

---

Tags

restodata

### Embed Badge

![Health badge](/badges/adrotec-odataphpprod/health.svg)

```
[![Health](https://phpackages.com/badges/adrotec-odataphpprod/health.svg)](https://phpackages.com/packages/adrotec-odataphpprod)
```

###  Alternatives

[zircote/swagger-php

Generate interactive documentation for your RESTful API using PHP attributes (preferred) or PHPDoc annotations

5.3k132.9M468](/packages/zircote-swagger-php)[psr/link

Common interfaces for HTTP links

2.5k144.1M69](/packages/psr-link)[league/fractal

Handle the output of complex data structures ready for API output.

3.5k64.1M471](/packages/league-fractal)[friendsofsymfony/rest-bundle

This Bundle provides various tools to rapidly develop RESTful API's with Symfony

2.8k73.3M316](/packages/friendsofsymfony-rest-bundle)[lexik/jwt-authentication-bundle

This bundle provides JWT authentication for your Symfony REST API

2.6k58.7M210](/packages/lexik-jwt-authentication-bundle)[nelmio/api-doc-bundle

Generates documentation for your REST API from attributes

2.3k63.6M232](/packages/nelmio-api-doc-bundle)

PHPackages © 2026

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