PHP 代理模式


1. 在客戶端與實體之間建立一個代理對象(proxy),客戶端對實體進行的操作全部委派給代理對象,隱藏實體的具體實現細節。
2. Proxy還可以與業務代碼分離,部署到另外的服務器,業務代碼中通過RPC來委派任務。

//代理接口
interface Proxy
{
    public function getUserName($id);

    public function setUserName($id, $newName);
}

//用戶操作代理實現
class UserProxy implements Proxy
{
    //讀操作
    public function getUserName($id)
    {
        return Factory::getDataBase('slave')->find($id);
    }

    //寫操作
    public function setUserName($id, $newName)
    {
        return Factory::getDataBase('master')->data(['name' => $newName])->where(['id' => $id])
    }
}

//代理模式:數據庫主從,通過代理設置主從讀寫設置。
$proxy = new UserProxy();
$proxy->getUserName(1);
$proxy->setUserName(1, '張三');

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM