其他语言

本类阅读TOP10

·基于Solaris 开发环境的整体构思
·使用AutoMake轻松生成Makefile
·BCB数据库图像保存技术
·GNU中的Makefile
·射频芯片nRF401天线设计的分析
·iframe 的自适应高度
·BCB之Socket通信
·软件企业如何实施CMM
·入门系列--OpenGL最简单的入门
·WIN95中日志钩子(JournalRecord Hook)的使用

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
KISS PHP Framework v3 中的 ORM 语法

作者:未知 来源:月光软件站 加入时间:2005-5-13 月光软件站

假设我们有两个表

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中配置好的数据库连接,剩下的工作完全由框架实现




相关文章

相关软件