Skip to content

Files

Latest commit

b8aa050 · Sep 27, 2023

History

History
This branch is up to date with DesignPatternsPHP/DesignPatternsPHP:main.

EAV

README.rst

The Entity–attribute–value (EAV) pattern in order to implement EAV model with PHP.

Purpose

The Entity–attribute–value (EAV) model is a data model to describe entities where the number of attributes (properties, parameters) that can be used to describe them is potentially vast, but the number that will actually apply to a given entity is relatively modest.

UML Diagram

EAV UML Diagram

Code

You can also find this code on GitHub

Entity.php

.. literalinclude:: Entity.php
    :language: php
    :linenos:

Attribute.php

.. literalinclude:: Attribute.php
   :language: php
   :linenos:

Value.php

.. literalinclude:: Value.php
    :language: php
    :linenos:

Test

Tests/EAVTest.php

.. literalinclude:: Tests/EAVTest.php
   :language: php
   :linenos: