登录  /  注册

php的orm是什么意思

青灯夜游
发布: 2022-03-10 15:15:09
原创
4314人浏览过
在php中,orm全称“object-relationl mapping”,意思为“对象-关系映射”,简单的说就是对象模型和关系模型的一种映射;orm的主要用途是把对象模型表示的对象映射到基于sql的关系模型数据库结构中去。

php的orm是什么意思

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

orm是什么意思

  • O = Object

  • RM->Relational (关系) Mapping(映射)

即是Object-Relationl Mapping,简单的说就是对象模型和关系模型的一种映射。

ORM所代表的什么思想呢:

  • 数据库的表(table) --> 类(class)

  • 记录(record,行数据)–> 对象(object)

  • 字段(field)–> 对象的属性(attribute)

它的作用是在关系型数据库和对象之间作一个映射,这样,我们在具体的操作数据库的时候,就不需要再去和复杂的SQL语句打交道,只要像平时操作对象一样操作它就可以了 。

举个例子:获取一篇文章,传统的方式先要执行一个sql检索数据

select * from post where id = 1
登录后复制

然后输出标题和内容使用

echo $post['title']; echo $post['content'];
登录后复制

上面的代码遇到面向对象强迫症者,他们会纠结死的。

所以他们想出了这个东西,在ORM里获取一篇文章可以这样:

$post = postTable::getInstance()->find(1);#会再内部执行select * from post where id = 1
登录后复制

然后输出:

echo $post->getTitle();
echo $post->getContent();
登录后复制

妈妈再也不用担心我的强迫症了^_^

高级点的应用,文章和分类是一对多关系、文章和标签是多对多关系

$cate = $post->getCategory(); //获取文章分类
echo $cate->getName(); //获取分类名 $tags = $post->getTags(); //获取一个文章的所有标签
登录后复制

是不是一个sql都没写就获取到我们需要的所有数据了?使用ORM可以完全不写sql而实现应用,这些ORM都替我们做了。
除此之外,orm还可以隔离底层数据库层,我们不需要关心我们使用的是mysql还是其他的关系型数据库。

我知道的orm: doctrine和propel

除了orm之外还有odm,即object document mapping,对象文档映射,使用文档数据库比如mongodb时使用

推荐学习:《PHP视频教程

以上就是php的orm是什么意思的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 //m.sbmmt.com/ All Rights Reserved | php.cn | 湘ICP备2023035733号