免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6023 | 回复: 4
打印 上一主题 下一主题

国内超强php ORM开源类发布 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-04-16 20:56 |只看该作者 |倒序浏览
本帖最后由 huanguuq 于 2010-04-17 13:02 编辑

ORM多对多关联
支持分布式多对多,只要是数据模型就可以了。就是两个对象可以不同数据库
queryphp ORM关联对象
一对一 hasOne
一对多 hasMany
多对多 ManyhasMany
  1.   $supply=M("supply"); //new 数据库中的表名,目前是模型名,
  2.     //可以在supplyBase.class.php中修改表名
  3.     $books=M("books");
  4.     echo $supply->Books->classname;//自动取得Books中内容
  5.     echo $supply->Books->Supply->title; //反过来取supply中的内容
  6.     echo $supply->title;
  7.     echo $books->classname;
  8. $supply=M("supply");  
  9. $books=M("booktype");  
  10. $books->get(911);  
  11. //取得id为911的行 并设置为编辑状态  
  12. $info=M("info")->limit(1)->get(1);  
  13. //取得info一行记录并设置编辑状态  
  14. //我们先看看已有对象数据
  15. print_r($books->getData());
  16. print_r($info->getData());
  17. //现在开始实际关联查询了。
  18. $supply->Books($books)->Infos($info)->fetch();  
  19. echo($supply->querySQL());
  20. print_r($supply->getRecord());
  21. //关联查询  
  22. //有点类似这样子  
  23. //where("bookid='".$books->bookid."' and typeid='".$infos->infoid."'")->fetch();
  24. //当然这样也行 只要设置了$books,$infos有数据为编辑状态后  
  25. //$supply->Books()->Infos()->fetch(); //是一样的。
复制代码
ORM关联设置例子:2:framework/model/supplyModel.class.php
  1. <?php
  2. class supplyModel extends supplyBase{
  3.   var $mapper=array("Books"=>array("map"=>"hasMany",
  4.                                    "TargetModel"=>"booktype",
  5.                                    "mapping"=>array("typeid"=>"typeid",
  6.                                                     "bookid"=>"bookid",
  7.                                                     "supplyid"=>"supplyid")
  8.                                    ),
  9.                     "Infos"=>array("map"=>"hasOne",
  10.                                    "TargetModel"=>"info",
  11.                                    "mapping"=>array("typeid"=>"typeid")));
  12. var $maps;
  13. var $maparray=array();

  14. }
  15. ?>
复制代码
具体可以下载chm手册和例子
http://code.google.com/p/queryphp/downloads/list

论坛徽章:
0
2 [报告]
发表于 2010-04-16 23:37 |只看该作者
不太喜欢orm这东西 不够直观不说 人员职责会搞混 优化难搞

论坛徽章:
0
3 [报告]
发表于 2010-04-17 12:54 |只看该作者
这个ORM又不占用什么内存,我认还以后将会越来越来使用ORM

论坛徽章:
52
码神
日期:2017-03-28 10:27:10综合交流区版块每日发帖之星
日期:2015-10-11 06:20:00综合交流区版块每日发帖之星
日期:2015-09-28 06:20:00综合交流区版块每日发帖之星
日期:2015-09-22 06:20:00每日论坛发贴之星
日期:2015-09-12 06:20:00综合交流区版块每日发帖之星
日期:2015-09-12 06:20:00综合交流区版块每日发帖之星
日期:2015-09-08 06:20:00综合交流区版块每日发帖之星
日期:2015-09-05 06:20:00综合交流区版块每日发帖之星
日期:2015-09-04 06:20:002015亚冠之德黑兰石油
日期:2015-09-01 10:41:53每日论坛发贴之星
日期:2015-10-11 06:20:00综合交流区版块每日发帖之星
日期:2015-10-12 06:20:00
4 [报告]
发表于 2010-04-19 20:21 |只看该作者

论坛徽章:
0
5 [报告]
发表于 2010-10-01 23:38 |只看该作者
目前通用权限系统也做完了.
http://bbs.chinaunix.net/thread-1691979-1-1.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP