新聞中心
本教程操作環(huán)境:windows7系統(tǒng)、PHP7.1版、DELL G3電腦

創(chuàng)新互聯(lián)公司從2013年開始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、做網(wǎng)站網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元新賓做網(wǎng)站,已為上家服務(wù),為新賓各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575
orm是什么意思
-
O = Object
-
RM->Relational (關(guān)系) Mapping(映射)
即是Object-Relationl Mapping,簡(jiǎn)單的說就是對(duì)象模型和關(guān)系模型的一種映射。
ORM所代表的什么思想呢:
-
數(shù)據(jù)庫(kù)的表(table) --> 類(class)
-
記錄(record,行數(shù)據(jù))–> 對(duì)象(object)
-
字段(field)–> 對(duì)象的屬性(attribute)
它的作用是在關(guān)系型數(shù)據(jù)庫(kù)和對(duì)象之間作一個(gè)映射,這樣,我們?cè)诰唧w的操作數(shù)據(jù)庫(kù)的時(shí)候,就不需要再去和復(fù)雜的SQL語句打交道,只要像平時(shí)操作對(duì)象一樣操作它就可以了 。
舉個(gè)例子:獲取一篇文章,傳統(tǒng)的方式先要執(zhí)行一個(gè)sql檢索數(shù)據(jù)
select * from post where id = 1
然后輸出標(biāo)題和內(nèi)容使用
echo $post['title']; echo $post['content'];
上面的代碼遇到面向?qū)ο髲?qiáng)迫癥者,他們會(huì)糾結(jié)死的。
所以他們想出了這個(gè)東西,在ORM里獲取一篇文章可以這樣:
$post = postTable::getInstance()->find(1);#會(huì)再內(nèi)部執(zhí)行select * from post where id = 1
然后輸出:
echo $post->getTitle(); echo $post->getContent();
媽媽再也不用擔(dān)心我的強(qiáng)迫癥了^_^
高級(jí)點(diǎn)的應(yīng)用,文章和分類是一對(duì)多關(guān)系、文章和標(biāo)簽是多對(duì)多關(guān)系
$cate = $post->getCategory(); //獲取文章分類 echo $cate->getName(); //獲取分類名 $tags = $post->getTags(); //獲取一個(gè)文章的所有標(biāo)簽
是不是一個(gè)sql都沒寫就獲取到我們需要的所有數(shù)據(jù)了?使用ORM可以完全不寫sql而實(shí)現(xiàn)應(yīng)用,這些ORM都替我們做了。
除此之外,orm還可以隔離底層數(shù)據(jù)庫(kù)層,我們不需要關(guān)心我們使用的是mysql還是其他的關(guān)系型數(shù)據(jù)庫(kù)。
我知道的orm: doctrine和propel
除了orm之外還有odm,即object document mapping,對(duì)象文檔映射,使用文檔數(shù)據(jù)庫(kù)比如mongodb時(shí)使用
分享標(biāo)題:php的orm是什么意思
網(wǎng)站鏈接:http://m.fisionsoft.com.cn/article/dpcihhs.html


咨詢
建站咨詢
