亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

用戶登錄驗證

原創(chuàng) 2019-03-16 15:23:30 197
摘要:<?php //container  代碼 class Db { public function connect() { return '數(shù)據(jù)庫連接成功<br/>'; } } //數(shù)據(jù)驗證類 class Validate { public function che
<?php
//container  代碼
class Db
{
	public function connect()
	{
		return '數(shù)據(jù)庫連接成功<br/>';
	}
}
//數(shù)據(jù)驗證類
class Validate
{
	public function check()
	{
		return '數(shù)據(jù)驗證成功<br/>';
	}
}
//視圖類
class View
{
	public function display()
	{
		return '用戶登錄成功<br/>';
	}
}
//以上三個類當(dāng)做工具類

//創(chuàng)建容器類
class Container
{
	//創(chuàng)建一個空數(shù)組來保存工具類以及實現(xiàn)的方法
	protected $instance = [];
	//將需要實例化的類與它的實現(xiàn)方法(怎么實例化)進(jìn)行綁定:將對象容器初始化
	public function bind($class, Closure $new)//Closure $new定義一個閉包方法
	{
		$this->instane[$class]=$new;
		/*$this->instance['db']=function(){  //傳入的方法就是如何實例化對象,
			return new db('localhost','root');
		}*/
	} 
	public function make($class,$params=[])//$params表示要傳入的參數(shù)   對外調(diào)用
	{
		//call_user_func_array()回調(diào)一個函數(shù),
		return call_user_func_array($this->instance[$class], []]);
	}
	
}
$container = new Container();
//將類綁定到容器中
$container->bind('db',function(){
	return new Db();
});
$container->bind('validate',function(){
	return new Validate();
});
$container->bind('view',function(){
	return new View();
});
//Facade代碼
<?php
require 'container.php';

class Facade
{
	//保存容器對象
	protected static $container = null;
	//創(chuàng)建初始化方法,給容器對象賦值
	public static function initalize(Container $container)
	{
		static::$container = $container;//把對象保存起來
	}
	
	public static function connect()
	{
		return static::$container->make('db')->connect();
	}
	public static function check()
	{
		return static::$container->make('validate')->check();
	}
	public static function display()
	{
		return static::$container->make('view')->display();
	}
}
echo '<h3>優(yōu)化后的門面統(tǒng)一調(diào)用</h3>';
Facade::initalize($container);//進(jìn)行初始化
echo Facade::connect();
echo Facade::check();
echo Facade::display();


批改老師:查無此人批改時間:2019-03-18 09:14:53
老師總結(jié):寫的不錯。門面模式的技巧,這個可以說說你的理解。老師才知道你學(xué)的怎么樣。繼續(xù)加油。

發(fā)布手記

熱門詞條