php中orm的含义是什么
今天小编给大家分享一下php中orm的含义是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
在php中,ORM全称"Object-Relationl Mapping",意思为"对象-关系映射",简单的说就是对象模型和关系模型的一种映射;ORM的主要用途是把对象模型表示的对象映射到基于sql的关系模型数据库结构中去。
本教程操作环境: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中orm的含义是什么"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。