To avoid the cost of creating objects the standard way (new Foo()) and instead create a prototype and clone it.
- Large amounts of data (e.g. create 1,000,000 rows in a database at once via a ORM).
You can also find this code on GitHub
BookPrototype.php
.. literalinclude:: BookPrototype.php :language: php :linenos:
BarBookPrototype.php
.. literalinclude:: BarBookPrototype.php :language: php :linenos:
FooBookPrototype.php
.. literalinclude:: FooBookPrototype.php :language: php :linenos:
Tests/PrototypeTest.php
.. literalinclude:: Tests/PrototypeTest.php :language: php :linenos: