PHP设计模式 注册表模式
程序员文章站
2022-05-24 13:50:12
下面是基本的注册表类的代码: 复制代码 代码如下:
下面是基本的注册表类的代码:
<?php
class registry {
private static $instance;
private $request;//注册表的内容类
private function __construct(){}//本类,不可实例化
static function instance(){//单例类,通过这个方法返回实例
if (!isset(self::$instance)){self::$instance=new self();}
return self::$instance;
}
function getrequest(){//返回注册的内容类
return $this->request;
}
function setrequest(request $request){//设置注册的内容类
$this->request=$request;
}
}
class request{//被 注册的类
private $webname="web开发笔记";
private $url="www.chhua.com";
function getname(){
echo $this->url;//输出www.chhua.com
}
}//被注册的空类
//使用
$reg=registry::instance();
$reg->setrequest(new request());
$request=$reg->getrequest();
$request->getname();//输出www.chhua.com
?>
注册表的作用是提供系统级别的对象访问功能。
复制代码 代码如下:
<?php
class registry {
private static $instance;
private $request;//注册表的内容类
private function __construct(){}//本类,不可实例化
static function instance(){//单例类,通过这个方法返回实例
if (!isset(self::$instance)){self::$instance=new self();}
return self::$instance;
}
function getrequest(){//返回注册的内容类
return $this->request;
}
function setrequest(request $request){//设置注册的内容类
$this->request=$request;
}
}
class request{//被 注册的类
private $webname="web开发笔记";
private $url="www.chhua.com";
function getname(){
echo $this->url;//输出www.chhua.com
}
}//被注册的空类
//使用
$reg=registry::instance();
$reg->setrequest(new request());
$request=$reg->getrequest();
$request->getname();//输出www.chhua.com
?>
注册表的作用是提供系统级别的对象访问功能。