php - model,entity,dao,orm这几个的区别?
PHPz
PHPz 2017-04-10 15:53:42
[PHP讨论组]

有点混淆啊,大神给说一下几个的区别啊。

PHPz
PHPz

学习是最好的投资!

全部回复(1)
迷茫

model一般在MVC中出现,指的是M层,也就是模型层。

entity在PHP中我很少见到,一般在asp和java中多一点,也是框架中的一部分,也算是模型层的一部分吧,他是把数据表或其它持久化数据的格式映射成的类,就是实体类,里面一般属性居多,你可以理解一个字段对应一个变量属性。

dao一搬指的是数据库的封装接口,PHP中有pdo就是这个,model层就是在其基础之上的。也有MVC喜欢把model层和dao层搞成一个,但是一搬不建议这样,耦合性差。

ORM是一种设计,一般在框架中应用很多,PHP中也很多,一般在model层体现出来,这个是居于面向对象编程才有的。全称是“Object Relational Mapping”。一般你可以理解成一个对象对应的就是数据库的一张表,有统一的操作API(find,select()等等),当然还有一对多,多对多的关系,你在实际使用过程当中就能感受到了。
举个栗子

//TP框架下
//会再内部执行select * from user where id = 1
//这里的$userModel就是一个数据表对象
$reslut = $userModel->where(['id'=>1])->find();

如果有问题,请在评论区大家一起讨论,完善。
(●'◡'●)

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号