php设计模式之数据对象映射模式
php设计模式之数据对象映射模式
别人说我名字很长 发表于2年前
php设计模式之数据对象映射模式
  • 发表于 2年前
  • 阅读 16
  • 收藏 0
  • 点赞 1
  • 评论 0

腾讯云 学生专属云服务套餐 10元起购>>>   

<?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";



共有 人打赏支持
粉丝 53
博文 227
码字总数 83765
×
别人说我名字很长
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: