PHPackages                             zortje/mvc - 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. [Framework](/categories/framework)
4. /
5. zortje/mvc

ActiveLibrary[Framework](/categories/framework)

zortje/mvc
==========

MVC

0.5.1(9y ago)13391MITPHPPHP &gt;=7.0

Since Apr 29Pushed 9y ago1 watchersCompare

[ Source](https://github.com/zortje/mvc)[ Packagist](https://packagist.org/packages/zortje/mvc)[ RSS](/packages/zortje-mvc/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (7)Dependencies (7)Versions (8)Used By (0)

MVC
===

[](#mvc)

MVC

[![Packagist](https://camo.githubusercontent.com/ff2474da101ca9469ff56b5ea02e0dc9d8f0eb59c9d75f92406af48d5d77db33/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f7a6f72746a652f6d76632e7376673f7374796c653d666c6174)](https://packagist.org/packages/zortje/mvc)[![Travis](https://camo.githubusercontent.com/70da208a48f2fb2b1df1ce80169a1ab896e71f73b2c1df68c8597cbb40a05c9c/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f7a6f72746a652f6d76632e7376673f7374796c653d666c6174)](https://travis-ci.org/zortje/mvc)[![Codecov](https://camo.githubusercontent.com/8864325db87b68019f5da8b2332bc916c11c295ea84986ffde6c94859b1621e4/68747470733a2f2f696d672e736869656c64732e696f2f636f6465636f762f632f6769746875622f7a6f72746a652f6d76632e737667)](https://codecov.io/github/zortje/mvc)[![Scrutinizer](https://camo.githubusercontent.com/b7ad6a2f8a59435d524e320dcf8578650ee746476cb411f8a5ebfeab75a5f538/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f7a6f72746a652f6d76632e7376673f7374796c653d666c6174)](https://scrutinizer-ci.com/g/zortje/mvc/?branch=master)[![Dependency Status](https://camo.githubusercontent.com/739fefca3f3bfffc37829605605fd253cf5bd0d287b07d713b89a65470a92f2f/68747470733a2f2f646570656e64656e637963692e636f6d2f6769746875622f7a6f72746a652f6d76632f6261646765)](https://dependencyci.com/github/zortje/mvc)[![Packagist](https://camo.githubusercontent.com/5c723bee98719412ff3d61f0fb2079995ab790bd2b6c8d7b6c7d82feba1a314b/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f7a6f72746a652f6d76632e7376673f7374796c653d666c6174)](https://packagist.org/packages/zortje/mvc)

[![SensioLabsInsight](https://camo.githubusercontent.com/f9067f584dd7de858ab2d17e6d0154f9784f83ea71e45f810126ec1f121263f6/68747470733a2f2f696e73696768742e73656e73696f6c6162732e636f6d2f70726f6a656374732f63316535346432392d313562372d343165612d616434302d6461613737353032653633332f6269672e706e67)](https://insight.sensiolabs.com/projects/c1e54d29-15b7-41ea-ad40-daa77502e633)

Installing via Composer
-----------------------

[](#installing-via-composer)

The recommended way to install MVC is through [Composer](https://getcomposer.org/).

```
{
    "require": {
        "zortje/mvc": "~0.0"
    }
}
```

Setup
-----

[](#setup)

**Database**

Init Phinx with `phinx.yml` and run migration to create user tables.

**Webroot**

The NGINX server block root should point to the webroot folder where the index.php file should be, along with any files that should be directly accessible from the web browser.

Documentation
=============

[](#documentation)

Controller
----------

[](#controller)

Model
-----

[](#model)

The model is devided into two classes; Table and Entity.

### Table

[](#table)

A table must extend the Table class and contain a property for `tableName` which is the database table name and `entityClass` which is the entity class name.

```
class UserTable extends Zortje\MVC\Model\Table\Table
{
    protected $tableName = 'users';
    protected $entityClass = User::class;
}

```

### Entity

[](#entity)

A entity must extend the Entity class and contain a property for columns.

The columns are defined with the table column name as the key and data type for value, the type can be either `string`, `int`, `float`, `double`, `bool`, `date` or `datetime`.

A optional "convenience" constructor can be added to the class to class to ease the creation of the entity object.

```
class User extends Zortje\MVC\Model\Table\Entity
{

    protected static $columns = [
        'email'         => EntityProperty::STRING,
        'password_hash' => EntityProperty::STRING,
    ];

    public function __construct(string $email, string $passwordHash)
    {
        parent::__construct(null, new \DateTime(), new \DateTime());

        $this->set('email', $email);
        $this->set('password_hash', $passwordHash);
    }
}

```

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~94 days

Recently: every ~140 days

Total

7

Last Release

3472d ago

PHP version history (3 changes)0.1.0PHP &gt;=5.4

0.2.0PHP &gt;=5.5

0.4.0PHP &gt;=7.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/515c147cfd9178357f516903b92c2ecce6970a16418e40bf26d184eca03dc68e?d=identicon)[Zortje](/maintainers/Zortje)

---

Top Contributors

[![zortje](https://avatars.githubusercontent.com/u/3150158?v=4)](https://github.com/zortje "zortje (215 commits)")

---

Tags

frameworkmvc

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/zortje-mvc/health.svg)

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

###  Alternatives

[laravel/framework

The Laravel Framework.

34.7k509.9M17.0k](/packages/laravel-framework)[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)[wcmf/wcmf

The wCMF web application framework

122.4k1](/packages/wcmf-wcmf)[openpsa/midcom

Content-oriented Model-View-Controller framework for PHP

293.2k1](/packages/openpsa-midcom)

PHPackages © 2026

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