<?php
// 工厂模式解决如何不通过new来创建实例对象的方法
class mysql{
public function __construct(){echo "mysql";}
}
class oracle{
public function __construct(){echo "oracle";}
}
class Factory{
public static function getObj($type){
switch ($type) {
case 'mysql':
return new mysql();
break;
case 'oracle':
return new oracle();
break;
default:
throw new Exception("no database type");
break;
}
}
}
$obj = Factory::getObj('mysql');
var_dump($obj);
$obj = Factory::getObj('oracle');
var_dump($obj);
?>
// 工厂模式解决如何不通过new来创建实例对象的方法
class mysql{
public function __construct(){echo "mysql";}
}
class oracle{
public function __construct(){echo "oracle";}
}
class Factory{
public static function getObj($type){
switch ($type) {
case 'mysql':
return new mysql();
break;
case 'oracle':
return new oracle();
break;
default:
throw new Exception("no database type");
break;
}
}
}
$obj = Factory::getObj('mysql');
var_dump($obj);
$obj = Factory::getObj('oracle');
var_dump($obj);
?>