复代码 代码如下:
/**
* 팩토리 메서드 패턴
*
* 객체 생성을 위한 인터페이스를 정의하고, 하위 클래스에서 인스턴스화할 클래스를 결정하도록 하고, 클래스를 사용하여 인스턴스화를 하위 클래스로 연기합니다.
*/
/*
class DBFactory
{
public static function create($type)
{
swtich($type)
{
case "Mysql":
return new MysqlDB( ); 부서지다;
케이스 "Postgre":
새 PostgreDB()를 반환합니다. 부서지다;
case "Mssql":
새 MssqlDB()를 반환합니다. 부서지다;
}
}
}
*/
class DBFactory
{
public static function create($type)
{
$class = $type. "DB";
새 $class를 반환합니다.
}
}
인터페이스 DB
{
공용 함수 connect();
공개 함수 exec();
}
MysqlDB 클래스가 DB를 구현함
{
public function __construct() {
echo "mysql db
";
}
공용 함수 connect() {
}
공용 함수 exec() {
}
}
클래스 PostgreDB가 DB를 구현합니다
{
공용 함수 __construct() {
echo "Postgre DB
";
}
공용 함수 connect() {
}
공용 함수 exec() {
}
}
클래스 MssqlDB가 DB를 구현합니다
{
공용 함수 __construct() {
echo "mssql db
";
}
공용 함수 connect() {
}
공용 함수 exec() {
}
}
$oMysql = DBFactory::create("Mysql");
$oPostgre = DBFactory::create("Postgre");
$oMssql = DBFactory::create("Mssql");
以上就介绍了공장 초기화 php设计模式 공장 초기화 工厂模式,包括了공장 초기화 방법이 화면에 있습니다.