如何构建 PHP MVC 模型


How to structure PHP MVC Models

我想知道如何构建MVC模型,例如我有一个包含基本CRUD操作和身份验证功能的用户模型。如果我想分离函数,以便一个类表示数据库交互函数,另一个类表示业务逻辑(登录过程等),我该怎么做?

Class User{
    function getUser($id){
       //code
    }
    function create($data){
       //code
    }
    function update($id , $data){
       //code
    }
    function delete($id){
       //code
    }
    function authenticate($username , $password){
       //code
    }
    function createCookie(){
       //code
    }
}

我会做以下修改

  1. 使用抽象 CRUD 函数和抽象变量创建一个抽象基模型类,该变量告诉模型将使用的表名。
  2. 对于我的每个表,
  3. 我将创建一个基表特定的模型,继承我的基模型类,并定义表名和 CRUD 操作。
  4. 为了定义我所有的额外函数,我会创建一个模型,该模型可以使用在步骤 2 中创建的模型来执行多个操作

PS:这不是我最初的想法。许多 PHP MVC 框架都使用此模式来构建其代码。