php设计模式(14)数据对象映射模式

2017-03-26 17:24:30 admin ...

前言:

数据对象映射模式是在做数据库相关的模时可能遇到,如果你日常工作,在PHP开发框架进行增删改查操作中徘徊,那一起来升级,研究一下实现方式吧。

内容概要:

1、什么是数据对象映射模式

简单说,就是将对象的操作和数据库的操作联系(映射)起来。调用方使用对象的方式对数据进行操作,降低数据操作难度,代码也更加的优雅性感,同时也能增加数据操作的安全性。

定义还是比较简单,我们这里还是举例来说明。

话说,使用过ThinkPHP3.2的同学都应该清楚一下代码的含义

M('user')->name = 'php在路上';
M('user')->save();

其中M(‘user’)表示是user表对应对象,可以完成对user表的数据进行增删改查操作,这里就实现的对象的name属性和数据之间的交互(映射)操作。我们下面使用PHP代码模拟这一个功能的实现。

2、代码示例

先建立一个用于测试的表

CREATE TABLE `student` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增ID',
  `name` varchar(50) NOT NULL DEFAULT '0' COMMENT '学生姓名',
  `age` tinyint(4) NOT NULL COMMENT '年龄',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;

插入两条数据先:

INSERT INTO `student` VALUES ('1', 'pipi', '22'), ('2', 'hao', '2');

正式上代码:

使用的时候

有人说了,Tp的M功能呢?哈哈,我偷懒了,不过说一下思路大家参考实现吧。

1、将数据库的类做自动加载,加载到注册树上。
2、写一个M函数,取注册树上的对象。

希望大家能看明白我说的数据对象映射模式。有问题到评论区说吧

相似文章