文档章节

php设计模式之数据对象映射模式

别人说我名字很长
 别人说我名字很长
发布于 2016/02/12 16:55
字数 191
阅读 21
收藏 0
<?php

namespace Tools;

/*
数据对象映射模式
数据对象映射模式是将对象和数据存储映射起来,对一个对象的操作会映射为对数据存储的操作
*/

//User对象映射到数据库中的user表
class User{
	public $id;
	public $username;
	public $password;

	protected $db;

	//类实例化是赋值对象属性
	function  __construct($id)
	{
		$this->db = new \Tools\MYSQLI();
		$this->db->connect("localhost","root","","test");
		$res = $this->db->query("select * from user limit 1");
		$data = $res->fetch_assoc();
		$this->id=$data['id'];
		$this->username = $data['username'];
		$this->password = $data['password'];
	}

	//类销毁时更新对象到数据库
	function __destruct()
	{
		$sql = "update user set username='{$this->username}',password='{$this->password}' where id={$this->id}";
		$this->db->query($sql);
		echo $sql;
	}
}

$user = new \Tools\User(1);
var_dump($user->id,$user->username,$user->password);
$user->username = "张三";
$user->password = "admin";



© 著作权归作者所有

共有 人打赏支持
别人说我名字很长
粉丝 55
博文 254
码字总数 103692
作品 0
济南
程序员
php各种设计模式简单实践思考

前言 我一直觉得什么框架,版本,甚至语言对于一个coder来说真的不算什么,掌握一个特别高大上的一个框架或者是一个新的,少众的语言真的不算什么,因为你可以,我要花时间也可以,大家都是这...

michaelgbw
2016/06/13
0
0
JavaScript 中常见设计模式整理

开发中,我们或多或少地接触了设计模式,但是很多时候不知道自己使用了哪种设计模式或者说该使用何种设计模式。本文意在梳理常见设计模式的特点,从而对它们有比较清晰的认知。 JavaScript 中...

牧云云
05/18
0
0
JavaScript常用设计模式

设计模式 设计模式是一种在长时间的经验与错误中总结出来可服用的解决方案。 设计模式主要分为3类: 创建型设计模式:专注于处理对象的创建 Constructor构造器模式,Factory工厂模式,Singl...

a独家记忆
07/13
0
0
Tomcat 系统架构与设计模式_ 设计模式分析

门面设计模式 门面设计模式在 Tomcat 中有多处使用,在 Request 和 Response 对象封装中、Standard Wrapper 到 ServletConfig 封装中、ApplicationContext 到 ServletContext 封装中等都用到...

lvzjane
2014/11/03
0
0
【设计模式笔记】(十六)- 代理模式

一、简述 代理模式(Proxy Pattern),为其他对象提供一个代理,并由代理对象控制原有对象的引用;也称为委托模式。 其实代理模式无论是在日常开发还是设计模式中,基本随处可见,中介者模式中...

MrTrying
06/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Redis大key搜索

一、背景信息 Redis 提供了 list、hash、zset 等复杂类型的数据结构,业务在使用的时候可能由于 key 设计不合理导致某个 key 过大。由于 redis 简单的单线程模型,业务在获取或者删除大 key ...

IT--小哥
21分钟前
1
0
Tcl命令操作实验-----(5)

Vivado% proc myproc {arg} {puts $arg}Vivado% myproc mynamemynameVivado% if {2>1} {puts 2>1} else {puts 2<1}2>1...

whoisliang
36分钟前
1
0
比特币钱包RPC的PHP调用方法

当我们希望在Php开发的网站中加入比特币支付功能时,需要解决的第一个 问题,就是如何在Php程序代码中调用比特币钱包的RPC API开发接口来实现 我们期望的功能,例如比特币的支付与接收。 例如...

汇智网教程
37分钟前
1
0
crunch 練習

crunch 10 10 -t 09%%%%%%%% -o tw_mobile_number.lst

BaiyuanLab
53分钟前
0
0
Kafka技术资料总结(不断更新中)

1、Kafka实践:到底该不该把不同类型的消息放在同一个主题中 2、Kafka剖析系列: Kafka剖析(一):Kafka背景及架构介绍 Kafka设计解析(二):Kafka High Availability (上) Kafka设计解析...

九州暮云
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部