工厂方法


class IndexController extends Controller
{
    //抽象工厂方法
    public function test()
    {
        $mysql  = Mysql::getInstance();
        $mysqli = Mysqli::getInstance();
        $pdo    = Pdo::getInstance();
    }

}
interface Factory
{
    //获取实例
    public static function getInstance();

}
//mysql
class Mysql implements Factory
{

    public static function getInstance()
    {
        // TODO: Implement getInstance() method.
        return mysql_connect('127.0.0.1', 'root', '123456');
    }

}
//mysqli
class Mysqli implements Factory
{
    public static function getInstance()
    {
        // TODO: Implement getInstance() method.
        return mysqli_connect('127.0.0.1', 'root', '123456', 'testDb');
    }
}
//pdo
class Pdo implements Factory
{
    public static function getInstance()
    {
        // TODO: Implement getInstance() method.
        return new PDO('mysql:host=127.0.0.1;dbname=test', 'root', 'password');
    }
}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容