首页 > php框架 > discuz X的单件模式

discuz X的单件模式

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

X的只要文件开头都有这么一句话

$discuz = & discuz_core::instance();

<?php
// instance()属于discuz_core类在class_core.php
function &instance() {
    static $object;
    if (empty($object)) {
        $object = new discuz_core();
    }
    return $object;
}
?>

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

<?php
//这里是单件模式的简单例子。
class PHPig {
    private static $v = null;
    static function instance() {
        if (self::$v == null) {
            self::$v = new PHPig();
        }
        return self::$v;
    }
}
$pig1 = PHPig::instance();
$pig2 = PHPig::instance();
if ($pig1 === $pig2) {
    echo '同一个对象';
} else {
    echo '不是同一个对象';
}
?>


永久链接:http://www.phprm.com/frame/php1005274.html

转载随意!带上文章地址吧。

标签:none

发表留言