KISS PHP Framework v3 中的 ORM 语法

原创 2005年05月02日 17:58:00

假设我们有两个表

CREATE TABLE school (
  school_id int(11) NOT NULL default '0',
  school_name char(20) NOT NULL default '',
  PRIMARY KEY  (school_id)
) TYPE=MyISAM;

CREATE TABLE student (
  student_id int(11) NOT NULL default '0',
  student_name char(20) NOT NULL default '',
  school_id int(11) default NULL,
  PRIMARY KEY  (student_id)
) TYPE=MyISAM;

数据如下:

INSERT INTO school VALUES (1,'学校A');
INSERT INTO school VALUES (2,'学校B');

INSERT INTO student VALUES (1,'学生甲',1);
INSERT INTO student VALUES (2,'学生乙',1);
INSERT INTO student VALUES (3,'学生丙',2);
INSERT INTO student VALUES (4,'学生丁',2);

下面继承两个空类出来

class school extends KISS_DataObject {}

class student extends KISS_DataObject {}

框架自己去完成映射关系,下面我们就可以直接使用了

$student = student::find(2); // 获得“学生乙”的实例
echo $student->student_name; // 输出“学生乙”
$school = $student->school; // 获得“学校A”的实例,映射自动完成,也可以手动配置
echo $school->school_name; // 输出“学校A”
$students = $school->student; // 获得包含“学生甲”“学生乙”实例的数组,其中“学生乙”的实例和 $student 指向同一内存地址

这是最简单的情况,完全不需要配置,当数据库连接使用php.ini中配置好的数据库连接,剩下的工作完全由框架实现

KISS PHP Framework 的历史

KISS 对于我来说是一个非常有意义的名字,在我上大学的时候,建立了一个网站,名字就叫KISS,寓意 Keep It Simple Style,经营了4年,后来终于由于毕业,没有自己的服务器终于关闭了...
  • iwater
  • iwater
  • 2005年05月02日 17:32
  • 1793

ADO.NET与ORM的比较(4):EntityFramework实现CRUD

 说明:个人感觉在Java领域大型开发都离不了ORM的身影,所谓的SSH就是Spring+Struts+Hibernate,除了在学习基础知识的时候被告知可以使用JDBC操作数据库之外,大量的书籍中都...
  • zhoufoxcn
  • zhoufoxcn
  • 2010年05月10日 08:57
  • 17801

PHP下ORM的基本实现

服务端编程经常需要和数据库打交道,CRUD是基本的操作。数据对象是整个操作的中心,数据库的一条记录对应着一个数据对象的信息,ORM(对象关系映射)讲的就是如何优雅的把数据对象和CRUD结合起来。这里主...
  • lc598470345
  • lc598470345
  • 2015年01月12日 23:29
  • 1540

编程中的一些概念,KISS、DRY、MVC、OOP、REST

KISS、DRY、MVC、OOP、REST  (1)KISS是指Keep It Simple,Stupid(摘自wikipedia),指设计时要坚持简约原则,避免不必要的复杂化。  (2)DRY是...
  • u014626424
  • u014626424
  • 2016年02月16日 17:14
  • 679

Andorid|java 设计模式之--KISS

The Kiss PrincipleKISS代表什么KISS是Keep It Stupid Simple 或者 Keep It Simple ,Stupid的简写KISS是什么KISS的原则已经成为这...
  • l491337898
  • l491337898
  • 2017年02月15日 09:09
  • 334

PHP ORM框架与简单代码实现

对象关系映射(Object Relational Mapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据...
  • u013179809
  • u013179809
  • 2015年10月14日 14:03
  • 642

EFProf Entity Framework Profile 工具 现在都用ORM Profiler,官方提供的,1.5版本了

EFProf Entity Framework Profile 工具 SQL Server Profiler用来跟踪应用程序发送到SQL Server中的SQL语句,用于检测性能,查找问...
  • autumn20080101
  • autumn20080101
  • 2016年11月02日 20:07
  • 386

KISS 原则翻译

原文地址 https://people.apache.org/~fhanik/kiss.html What does KISS stand for? KISS 代表什么? The KISS i...
  • csdn1125550225
  • csdn1125550225
  • 2017年02月06日 13:30
  • 354

ADO.NET Entity Framework——来自微软官方的ORM框架

长久以来,程序员和数据库总是保持着一种微妙的关系,在商用应用程序中,数据库一定是不可或缺的元件,这让程序员一定要为了连接与访问数据库而去学习 SQL 指令,至少对于我而言,我觉得这是一个很不爽的事情。...
  • huangqinjun2005
  • huangqinjun2005
  • 2009年06月18日 13:37
  • 485

Mongodm : 一个PHP的mongo ORM 操作组件

PHP提供的一系列的Mongo操作类已经很强大了. 但是仍然不是很友好.这在以前使用的时候就有感触, 当时是自己团队写的一套封装, 也经常出现种种的问题. 目前在用Phalcon, 框架还在发展阶段,...
  • black_OX
  • black_OX
  • 2014年03月31日 19:05
  • 3807
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:KISS PHP Framework v3 中的 ORM 语法
举报原因:
原因补充:

(最多只允许输入30个字)