ホームページ  >  記事  >  バックエンド開発  >  PHPデザインパターン レジストリパターン(複数クラスの登録)_PHPチュートリアル

PHPデザインパターン レジストリパターン(複数クラスの登録)_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:20:471133ブラウズ

以前にレジストリ クラスも作成しましたが、そのクラスは以下の配列に格納されます。複数のクラスを登録することはできません。

コードをコピーします コードは次のとおりです:

//Basic class
class webSite {//非常に単純な基本クラス
private $siteUrl; __construct($ siteName,$siteUrl){
$this->siteName=$siteName;
$this->siteUrl=$siteUrl;
}
function getName(){
return $this->siteName;
function getUrl (){
return $this->siteUrl;
}
}
class registry {//レジストリ クラス シングルトン モード
private static $instance;// 配列を使用して格納しますクラス名
private function __construct(){}//この使用法により、このクラスを直接インスタンス化できないことが決定されます
static functioninstance(){
if (!isset(self::$instance)){self::$instance=new self( );}
return self::$instance;
}
function get($key){//登録されたクラスを取得する
if (isset($this->values[$key])){
return $ this->values[$key];
}
return null;
function set($key,$value){// クラスメソッドを登録します
$this->values[$key]=$value; }
}
$reg=registry::instance();
$reg->set("website",new webSite("WEB Development Notes","www.chhua.com"));//クラスを設定するRegister
$website=$reg->get("website");//クラスを取得
echo $website->getName();//WEB開発ノートを出力
echo $website->getUrl(); / /出力 www.chhua.com
?>


レジストリの機能は、システム レベルのオブジェクト アクセス機能を提供することです。学生の中にはこれは不要だという人もいるでしょうが、小規模なプロジェクトであればクラスを登録する必要はありませんが、それでも非常に役立ちます。



http://www.bkjia.com/PHPjc/325018.html

www.bkjia.com

tru​​e

技術記事以前にレジストリ クラスも作成しましたが、そのクラスは以下の配列に格納されます。複数のクラスを登録することはできません。 コードをコピーします。 コードは次のとおりです。 ?php //Basic クラス class webS...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。