5.适配器模式
来源:互联网 发布:北京科瑞明软件招聘 编辑:程序博客网 时间:2024/04/30 19:15
IDatabase.php
<?phpnamespace IMooc;interface IDatabase{ public function connect($host,$user,$password,$dbname); public function query($sql); public function close();}
MySQL.php
<?phpnamespace IMooc\Database;use IMooc\IDatabase;class MySQL implements IDatabase{ protected $conn; public function connect($host,$user,$password,$dbname) { $this->conn = mysql_connect($host,$user,$password); mysql_select_db($dbname); } public function query($sql) { $res = mysql_query($sql,$this->conn); return $res; } public function close() { $this->close($this->conn); }}
MySQLi.php
<?phpnamespace IMooc\Database;use IMooc\IDatabase;class MySQLi implements IDatabase{ protected $conn; public function connect($host,$user,$password,$dbname) { $conn = mysqli_connect($host,$user,$password,$dbname); $this->conn = $conn; } public function query($sql) { return mysqli_query($this->conn,$sql); } public function close() { mysqli_close($this->conn); }}
POD.php
<?phpnamespace IMooc\Database;use IMooc\IDatabase;class PDO implements IDatabase{ protected $conn; public function connect($host,$user,$password,$dbname) { $this->conn = new \PDO("mysql:host=$host;dbname=$dbname",$user,$password); } public function query($sql) { return $this->conn->query($sql); } public function close() { unset($this->conn); }}
index.php
<?phpdefine('BASEDIR',__DIR__);include BASEDIR . '/IMooc/Loader.php';spl_autoload_register('\\IMooc\\Loader::autoload');/*$db=IMooc\Factory::createDatabase();$db = \IMooc\Register::get('db1');var_dump(get_class($db));*/// MySQL 实现/*$db = new IMooc\Database\MySQL();$db->connect('localhost','root','123456','test');$res = $db->query('select * from test;');while($row = mysql_fetch_row($res)){ $rows[] = $row;}var_dump($rows);*/// MySQLi 实现/*$db = new IMooc\Database\MySQLi();$db->connect('localhost','root','123456','test');$res = $db->query('select * from test;');while($row = mysqli_fetch_row($res)){ $rows[] = $row;}var_dump($rows);*/// PDO 实现$db = new IMooc\Database\PDO();$db->connect('localhost','root','123456','test');$res = $db->query('select * from test;');while($row = mysqli_fetch_row($res)){ $rows[] = $row;}var_dump($rows);
0 0
- 5.适配器模式
- 5. Adapter Pattern(适配器模式)
- 适配器及适配器模式
- 适配器及适配器模式
- 适配器模式(类适配器)
- 适配器模式(默认适配器)
- 适配器模式(对象适配器)
- 适配器模式-类适配器
- 适配器模式-对象适配器
- 设计模式学习--------5.适配器模式学习
- 设计模式学习--------5.适配器模式学习
- 5.适配器模式(设计模式笔记)
- 《设计模式》 - 5. 适配器模式( Adapter )
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 适配器模式
- 为什么需要NOSQL
- FFmpeg获取视频的旋转角度rotate函数,一定能获取!(要放在解析视频流的时候才能获取)
- 动态规划入门
- 什么是线程安全以及threadlocal为什么是线程安全的
- Data到DOM,DOM到data,两个变量,我们都要互相监听
- 5.适配器模式
- cocos2d-x 有关Node
- 熊猫TV 弹幕助手 (开源 、 Java)
- java InputStream读取数据问题(转)
- Java常见日期格式及日期的计算工具类
- uva10026 - Shoemaker's Problem
- audio filter adelay 实现音量 延迟(空白音)(笔记)
- VM虚拟机centos中的网络站点、主机访问
- 第1周周赛——开学第一课(题解)——出自(Codeforces Good Bye 2015 和 HDU1717)