Download the PHP package thesameson/php-data-contracts without Composer
On this page you can find all versions of the php package thesameson/php-data-contracts. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download thesameson/php-data-contracts
More information about thesameson/php-data-contracts
Files in thesameson/php-data-contracts
Package php-data-contracts
Short Description Extensible PHP library for defining and serializing Data Contracts. Supports PHP Attributes, custom resolvers, and runtime enrichment. Ships with Open Data Contract Standard (ODCS) support, extensible for custom standards.
License MIT
Informations about the package php-data-contracts
PHP Data Contracts
Extensible PHP library for defining and serializing Data Contracts using PHP Attributes or programmatically at runtime. Ships with Open Data Contract Standard (ODCS) support, extensible for custom standards.
Work in progress The API is stabilizing but may still change.
Requirements
- PHP 8.2+
Installation
Quick Start
Annotate your classes with the package's attributes to export them as data contracts:
Advanced Usage
The builder supports runtime enrichment and custom resolvers, all chainable:
ODCS Support
The built-in ODCS implementation covers fundamental contract, schema, and field properties. For ODCS properties that aren't modeled internally (e.g., classification, criticalDataElement), use customProperties - they are spread as top-level keys in the output:
The same works programmatically via setCustomProperties() on any definition object, or at the schema/contract level through #[Schema(customProperties: [...])] and #[Contract(customProperties: [...])].
Key Concepts
| Concept | Description |
|---|---|
| Attributes | #[Contract], #[Schema], #[Field] declare metadata directly on PHP classes and properties |
| Resolvers | Transform raw extracted metadata into normalized definitions (e.g., physical -> logical type mapping) |
| Enrichment | Runtime callbacks to add, modify, or remove fields/schemas after extraction |
| Standards | Pluggable output standards. ODCS ships built-in, implement StandardInterface for custom ones |
| Serializers | Output to YAML, JSON, or array or bring your own SerializerInterface |
License
MIT