1 適配器模式的應用場景php
將一個類的接口轉成咱們但願的另一個接口,使得本來接口不兼容不能在一塊兒工做的類能夠在一塊兒工做。
如:現實生活中的變壓器,能夠將不一樣電壓輸出的電器適配到 220v的電源插座。mysql
2適配器模式在數據庫操做中的應用sql
數據庫的操做 有 mysqli pdo mysql數據庫
案例:
(1)IDb.class.php
<?phpthis
namespace Scc;spa
interface Idb
{code
function connect($host,$user,$pwd,$dbname); function query($sql); function close();
}接口
(2)Mysqli.class.phppdo
<?phpio
namespace SccDb;
use SccIdb;
class Mysqli implements Idb
{
protected $conn; public function connect($host,$user,$pwd,$dbname) { $this->conn = mysqli_connect($host,$user,$pwd,$dbname); } function query($sql) { $res = mysqli_query($this->conn,$sql); return $res; } function close() { mysqli_close($this->conn); }
}
(3)PDO.class.php
<?php
namespace SccDb;
use Scc;
class PDO implements Idb
{
protected $conn; public function connect($host,$user,$pwd,$dbname) { $this->conn = new PDO("mysql:host=$host;dbname=$dbname",$user,$pwd); } public function query($sql) { $res = $this->conn->query($sql); return $res; } public function close() { unset($this->conn); }
}
這樣咱們就能夠將 mysqli 和 PDO 操做數據庫的方法兼容。