单子模式(SINGLETON)的简单实现

参考了超链接地址DevNet超链接地址Chinaunix.net 的讨论,用以下代码简单实现单子模式(SINGLETON):

代码片段:

<font color="#000000">
<font color="#0000CC"><?php <br /></font><font color="#FF9900">/**<br />*  Class: SingletonPool <br />*  Store multiple singletons (of different classes, naturally). <br />*<br />*/ <br /></font><font color="#006600">class </font><font color="#0000CC">Singleton </font><font color="#006600">{ <br /><br />    </font><font color="#FF9900">/**<br />    * 返回唯一对象,可保存多个对象<br />    *<br />    * @param (string) $class - the class name <br />    * @return object<br />    * @access public<br />    * @static<br />    */ <br />    </font><font color="#006600">function &</font><font color="#0000CC">getInstance</font><font color="#006600">(</font><font color="#0000CC">$class</font><font color="#006600">) { <br />        static </font><font color="#0000CC">$ob </font><font color="#006600">= array(); <br /><br />        if( !isset(</font><font color="#0000CC">$ob</font><font color="#006600">[</font><font color="#0000CC">$class</font><font color="#006600">]) ) { <br />            </font><font color="#0000CC">$ob</font><font color="#006600">[</font><font color="#0000CC">$class</font><font color="#006600">] = & new </font><font color="#0000CC">$class</font><font color="#006600">; <br />        } <br /><br />        return </font><font color="#0000CC">$ob</font><font color="#006600">[</font><font color="#0000CC">$class</font><font color="#006600">];<br />    } <br /><br />} <br /></font><font color="#0000CC">?></font>
</font>

作者: 发表于August 3, 2002 at 8:33 am

版权信息: 可以任意转载, 转载时请务必以超链接形式标明文章原始出处作者信息及此声明

Tags:

留条评论