<?php //适配器模式 可以将不同的函数接口封装成统一的api,比如mysqli和pdo interface Database{ public function connect($host, $name, $password, $db); public function query($sql); public function close(); } class MYSQLI implements Database{ protected $conn; public function connect($host, $name, $password, $db) { $this->conn = mysqli_connect($host, $name, $password, $db); } public function query($sql) { return mysqli_query($this->conn,$sql); } public function close() { mysqli_close($this->conn); } } class MYPDO implements Database{ protected $pdo; public function connect($host, $name, $password, $db){ $this->pdo = new PDO("mysql:host=$host;dbname=$db",$name,$password); } public function query($sql){ return $this->pdo->query($sql); } public function close(){ unset($this->pdo); } } //此时api MYSQLI 可以换成MYPDO 而不影响其他代码 $conn = new MYSQLI('127.0.0.1','admin','123456','moshi'); $conn->query($sql); $conn->close();
php 模式(适配器模式)
最新推荐文章于 2023-03-25 09:24:34 发布