php单例模式使用


请问各位高手,单例模式是不是每次执行完都要调用unset呢?我打算使用单例模式来构建我的lib类,如果我不每次运行后都unset,那么执行第二次就会有上一次的数据了,我见别人的例子也没有提及,不知有没有必要。还有单例模式是不适合构建lib 的类呢,请高手指点指点,谢谢

php

闲蛋小逃人 11 years, 11 months ago
   
  <?php
  
// 如果需要牵涉到单例的初始化

class foo {
static $instance = null;

public static function get_instance() {
if(self::$instance === null) {
self::$instance = new foo();
}

// 可以在return前 进行初始化
self::$instance->rest();

return self::$instance;
}

public function rest() {
// 这里可以进行使用前的初始化工作
}
}

如果你发现每次产生的实例都要和之前的不同,那么这个就不适合用单例,因为单例的先决条件就是整个运行周期仅一个实例对象。

至于你说的lib,主要看你的设计,要具体分析对待,但是我的大多数的lib还都没有采用单例。

Mega笑脸 answered 11 years, 11 months ago

Your Answer