当前位置:首页 > CMS教程 > Discuz > 列表

discuz X的单件模式

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-02 16:26:46 浏览: 评论:0 

文章介绍了一个关于discuz X的单件模式原创文章,PPC高亮插件太不友好了,我直接贴txt内容都会有奇奇怪怪问题发生.

X的只要文件开头都有这么一句话,代码如下:

  1. $discuz = & discuz_core::instance(); 
  2. // instance()属于discuz_core类在class_core.php 
  3. function &instance() { 
  4. static $object; 
  5. if(emptyempty($object)) { 
  6.   $object = new discuz_core(); 
  7. } 
  8. return $object; 
  9. } 

这里保证单词请求都运用一个discuz_core实例,这里的&写法是为了兼容PHP4的,如果在PHP5中,则可以使用static.

  1. //这里是单件模式的简单例子。 
  2. class PHPig { 
  3. private static $v = null; 
  4. static function instance() { 
  5.   if(self::$v == null) { 
  6.    self::$v = new PHPig(); 
  7.   } //开源代码phpfensi.com 
  8.   return self::$v; 
  9. } 
  10. } 
  11. $pig1 = PHPig::instance(); 
  12. $pig2 = PHPig::instance(); 
  13. if($pig1 === $pig2) { 
  14. echo '同一个对象'; 
  15. } else { 
  16. echo '不是同一个对象'; 
  17. }

Tags: discuz X 单件模式

分享到: