如何在 PHP 中创建一个通用的 DAO 接口?

How do I make a generic DAO interface in PHP?

我正在尝试在 PHP 中编写一个通用的 DAO 接口。我知道它在 Java 中的样子,但我只知道它在 PHP 中的样子。

我在 PHP 中试过这个。

<?php
 interface DAO {

    public function create($obj);
    public function read();
    public function update($obj);
    public function delete($obj);
 }

因为我想要这样的东西Java界面

public interface DAO<T> {

    void create(T ob);
    List<T> read();
    void update(T ob);
    void delete(String id);

}

我希望能够像在 PHP 中那样编写接口,但我无法将通用对象添加到接口中。

通用 DAO 的最简单形式是在对象级别提供基本的 CRUD 操作,而不暴露持久性机制的内部结构。

interface UserDao
{
    /**
     * Store the new user and assign a unique auto-generated ID.
     */
    function create($user);

    /**
     * Return the user with the given auto-generated ID.
     */
    function findById($id);

    /**
     * Return the user with the given login ID.
     */
    function findByLogin($login);

    /**
     * Update the user's fields.
     */
    function update($user);

    /**
     * Delete the user from the database.
     */
    function delete($user);
}