<?php //工厂模式 namespace PENG; class Factory{ static function createDatebase(){ $db=new Database(); return$db; } }<?php //单例模式 namespace PENG; class Database { protected $db; private function __construct() { } static function getInstance() { if(self::$db){ return self::$db; }else{ self::$db = new self(); return self::$db; } } function where($where) { return $this; } function order($order) { return $this; } function limit($limit) { return $this; } }<?php namespace PENG; //注册器模式 class Register{ protected static $objects; function set($alias,$object) { self::$objects[$alias] = $object; } function _unset($alias) { unset(self::$objects[$alias]); } }//适配器模式
interface IDatabase{ function connect($host, $user, $passwd, $dbname); function query($sql); function close(); }<?php namespace PENG\Database; use PENG\IDatabase; class MySQL implements IDatabase { protected $conn; function connect($host, $user, $passwd, $dbname){ $conn = mysql_connect($host, $user, $passwd); mysql_select_db($dbname,$conn); $this->conn = $conn; } function query($sql){ $res = mysql_query($sql,$this->conn); return $res; } function close(){ mysql_close($this->conn); } }//php数组方式运行类 继承/ArrayAccess即可
04-30
04-30
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交