PHP设计模式之工厂模式与单例模式
发布时间:2020-12-12 21:44:52 所属栏目:PHP教程 来源:网络整理
导读:本篇章节讲解PHP设计模式之工厂模式与单例模式实现方法。供大家参考研究具体如下: 设计模式简单说应对某类问题而设计的解决方式 工厂模式: 单例模式: val = 20;//clone可以调用__clone()克隆即new出一个新的的对象//$obj_two = clone $obj_one;
本篇章节讲解PHP设计模式之工厂模式与单例模式实现方法。分享给大家供大家参考,具体如下: 设计模式简单说应对某类问题而设计的解决方式 工厂模式:单例模式:val = 20;
//clone可以调用__clone()克隆即new出一个新的的对象
//$obj_two = clone $obj_one;
$obj_two = instance::getInstance();
echo $obj_two->val;
echo '
'; var_dump($obj_one,$obj_two); 运行结果如下: int 20
object(instance)[1]
public 'val' => int 20
应用:数据库连接类(database access oject) 3306,'host' => 'localhost','username' => 'root','passward' => 'root','dbname' => 'instance','charset' => 'utf8'
);
private $link;
static $instance;
private function __clone(){}
private function __construct(){
$this->link = mysql_connect($this->arr['host'],$this->arr['username'],$this->arr['passward']) or die(mysql_error());
mysql_select_db($this->arr['dbname']) or die('db error');
mysql_set_charset($this->arr['charset']);
}
static public function getInsance(){
if(!isset(mysqldb::$instance)){
mysqldb::$instance = new self;
}
return mysqldb::$instance;
}
public function query($sql){
if($res = mysql_query($sql)){
return $res;
}return false;
}
//fetch one
public function get_one($sql){
$res = $this->query($sql);
if($result = mysql_fetch_row($res)){
return $result[0];
}
}
//fetch row
public function get_row($sql){
$res = $this->query($sql);
if($result = mysql_fetch_assoc($res)){
return $result;
}
return false;
}
//fetch all
public function get_all($sql){
$res = $this->query($sql);
$arr = array();
while($result = mysql_fetch_assoc($res)){
$arr[] = $result;
}
return $arr;
}
}
$mysql = mysqldb::getInsance();
更多关于PHP相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》、《》及《》 希望本文所述对大家PHP程序设计有所帮助。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |