假设我们有两个表
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中配置好的数据库连接,剩下的工作完全由框架实现