PHP设计模式 注册表模式

yipeiwu_com6年前PHP代码库
下面是基本的注册表类的代码:
复制代码 代码如下:

<?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 引用文件技巧

我们知道,java中有包的概念,而.NET中则有更加方便的DLL程序集引用的概念,通过这些以打包形式组合在一起的对象集合,我们可以很方便的在自己的类中引用其他地方定义的类或其他对象,但由...

PHP基于IMAP收取邮件的方法示例

本文实例讲述了PHP基于IMAP收取邮件的方法。分享给大家供大家参考,具体如下: 因需要处理公司企业邮箱被退信邮件问题:刚开始的思路是通过模拟登陆,对邮件进行抓取,(这种事情对我来说,做...

PHP中Date()时间日期函数的使用方法小结

语法 date(format,timestamp)参数 描述 format 必需。规定时间戳的格式。 timestamp 可选。规定时间戳。默认是当前的日期和时间 要找出前一天的时间就是...

php curl批处理实现可控并发异步操作示例

本文实例讲述了php curl批处理实现可控并发异步操作。分享给大家供大家参考,具体如下: 通常情况下 PHP 中的 cURL 是阻塞运行的,就是说创建一个 cURL 请求以后必须等它执...

php生成高清缩略图实例详解

本文实例讲述了php生成高清缩略图的方法。分享给大家供大家参考,具体如下: 在使用php的函数生成缩略图的使用,缩略图很多情况下都会失真,这个时候需要有一些对应的解决方法。 1.用ima...