php DAL – 单独的实体和数据库?
|
我一直在研究和阅读很多关于在
PHP中使用单独的层来创建可维护和可读的代码.
class User{
public $id;
public $username;
public $database;
function add(){
$database->query ....
}
}
我觉得这很奇怪,因为在这里你将User类与数据库元素混合在一起,这使得维护起来更加困难. 我喜欢这样工作: >一个单独的数据库类 这样工作如下: $database = new Database(); $database->openConnection(); $dataUser = new DataUser($db); $user = new User(1,"myname"); $dataUser->saveUser($user); 所以我想知道,我是以正确的方式工作还是第一种创建代码的更好方法?
你似乎在说你希望从Active Record方法转向Data Mapper/Entity/Repository方法.这是一个很好的方向,因为它采用了更好的关注点分离.你可以自己构建这个,但你可能想看看像Doctrine这样的解决方案,它可以让你做一些基于以下的事情: $product = new Product(); $product->setName($newProductName); $entityManager->persist($product); $product实体只是一个POPO(Plain Old PHP Object),它包含记录数据,并且不知道它是如何持久化的,并且当需要持久性时,它被传递到实体管理器来处理存储. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
