在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。

<?php
namespace Lib;

class Factory
{

    public static function getDb()
    {
        $db = Register::get('db');
        if(!$db)
        {
            $db = new \Lib\Database\Mysqli();
            Register::set('db',$db);
        }
        return $db;
    }

    public static function getUser($id)
    {
        $key = 'user'.$id;
        $user = Register::get($key);
        if(!$user)
        {
            $user = new \Lib\User($id);
            Register::set($key,$user);
        }
        return $user;
    }

}

results matching ""

    No results matching ""

    results matching ""

      No results matching ""