纵有疾风起
人生不言弃

工厂模式之数据库、视图引擎

<?php
/*简单工厂模式初体验:通过传递特定类名来生产不同的对象的作用
class factory{
static function create($type){
return new $type;
}
}
$obj=factory::create(‘mysql’);
*/

//DB引擎:传入不同的数据库类类名,通过类名直接调用该DB引擎中的方法
class DB{
public static $db;

public static function init($dbtype,$config){
self::$db=new $dbtype;
return self::$db->connect($config);
}

public static function query($sql){
return self::$db->query($sql);
}

public static function findALL($sql){
$query=self::query($sql);
return self::$db->findALL($query);
}

public static function findOne($sql){
$query=self::query($sql);
return self:$db->findOne($query);
}

public static function findResult($query,$row=0,$field=0){
return self::$db->findResult($query,$row=0,$field=0);
}

public static function insert($table,$arr){
return self::$db->insert($table,$arr);
}

public static function update($table,$arr,$where){
return self::$db->update($table,$arr,$where);
}

public static function deletedata($table,$where){
return self::$db->deletedata($table,$where);
}
}

?>

//视图引擎:传递不同的视图引擎类名来进行调用

<?php
class VIEW{
public static $view;

public static function init($viewtype,$viewconfig){
self::$view=new $viewtype;

foreach($viewconfig as $key=>$value){
self::$view->$key=$value;
}

}

public static function assign($data){
foreach($data as $key=>$value){
self::$view->assign($key,$value);
}

}

public static function display($template){
self::$view->display($template);
}

}
?>

原文链接:https://blog.csdn.net/living_ren/article/details/78407640

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

未经允许不得转载:起风网 » 工厂模式之数据库、视图引擎
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录