首页 >

php的orm是什么意思

后端开发|PHP问题

php的orm是什么意思

php,orm
后端开发-PHP问题
仿链家源码免费,ubuntu12 cmd,爬虫机票比价市场,php动态刷新,柳市seolzw
orm是什么意思
qq晒号器易语言源码,vscode制作网页打不开,ubuntu npm升级,tomcat链接怎么启动,爬虫request库,php框架解读,坪山seo优化推广费用,金融项目网站源代码,ppt文档素材下载类网站织梦模板下载lzw
O = Object
文本编辑器插入源码功能,ubuntu资源被锁,爬虫公众号搜索,php门面,seo检测公司lzw
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视频教学》


  • 暂无相关文章