Thousands of engineers have asked for these changes and we are super excited to announce the much anticipated release of Cycle 2.0, the open source, PHP DataMapper, ORM and Data Modelling engine designed to safely work in classic and daemonized PHP applications (like RoadRunner which we hope you have checked out or are using). Cycle’s ORM provides flexible configuration options to model datasets, a powerful query builder and supports dynamic mapping schema. The engine can work with plain PHP objects, support annotation declarations, as well as proxies via extensions. Currently, Cycle reached 100K downloads and showing an optimistic growth trend.
Here's a quick rundown of Cycle over the last few months of development, the changes that were released in 2.0 and what's on our roadmap for the rest of the year. As always we love hearing from the community and we are doing our best to support all your requests.
Added new ways to project the inheritance hierarchy into the base.
In JTI, each entity in the class hierarchy is mapped to an individual table. Each table contains only the columns of the class associated with it and an identifier column, necessary for joining tables.
STI implies the use of one table for several subclasses of a hierarchy. This means all the attributes of the specified classes in the hierarchy are located in one common table. A special discriminator column is used to determine which data belongs to which class.
Here’s a visual representation of all the information above: