工厂模式之数据库、视图引擎
来源:互联网 发布:深圳网络代运营公司 编辑:程序博客网 时间:2024/06/05 12:47
<?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 functionquery($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);
}
}
/*简单工厂模式初体验:通过传递特定类名来生产不同的对象的作用
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 functionquery($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);
}
}
?>
阅读全文
0 0
- 工厂模式之数据库、视图引擎
- 自定义视图与工厂模式
- 工厂模式连接数据库
- 工厂模式连接数据库
- 【java面试系列之数据库篇】数据库存储引擎、索引、事务、视图、优化
- 工厂模式之简单工厂模式
- 工厂模式之抽象工厂模式
- 工厂模式之工厂方法模式
- 工厂模式之--简单工厂模式
- 工厂模式之--工厂方法模式
- 工厂模式之工厂方法模式
- 工厂模式之抽象工厂模式
- 工厂模式之简单工厂模式
- 设计模式 之简单工厂+ 工厂模式
- 工厂模式之工厂方法模式
- 工厂模式之抽象工厂模式
- Java工厂模式之简单工厂模式
- 工厂模式之我见
- innosetup打包程序脚本
- js传递数组到后台
- 常用连接池
- 剑指offer 二维数组中的查找
- Ctrl+c,Ctrl+d,Ctrl+z在Linux中意义
- 工厂模式之数据库、视图引擎
- [DP] BZOJ4321. queue2
- 欢乐互娱庞池海:《龙之谷》项目性能优化经验分享
- 输入学生人数和成绩并判断出最高分和总分
- Linux下部署lvs+keepalived实现高可用负载均衡
- android MVVM开发框架——(2)DataBinding 应用于ListView
- 3D 打印开源软件 cura
- day4总结
- 按钮布局演示