在全球范围内开设课程

时间:2013-12-19 06:18:15

标签: php class oop

具体来说,我有两个类Request和Utils,

class Request
{
public function __construct()
{
//constructor method
}
public function request()
{
  $utils=new Utils;
  $consolidated_errors=$utils->array_remove_empty($all_params_error);
}   
public function process()
{
  $utils=new Utils;
  $consolidated_errors=$utils->another_method($all_params_error);
 }                                                                   
}

和类Utils,

class Utils
{
public function __construct()
{
 //constructor method
}
public function array_remove_empty()
{
  //returns a variable.
  }        
public function another_method()
{
  //returns a variable.
 }     

}

你可以看到我在请求类中初始化了两次类,我的问题是,是否可以全局初始化类并在类中使用?

2 个答案:

答案 0 :(得分:1)

您正在寻找单身人士模式

以下为您的班级演示非常基本的Singleton示例

public class Utils {
  private static Utils uniqInstance;

  private Utils() {
  }

  public static synchronized Utils getInstance() {
    if (uniqInstance == null) {
      uniqInstance = new Utils();
    }
    return uniqInstance;
  }
  // other useful methods here
} 

使用静态工厂模式获取实例

答案 1 :(得分:0)

以上代码对我来说看起来不像Java,但无论如何,

您可以在班级private Utils myUtuils = new Utils ();

创建班级

或 将类作为静态类,然后直接在方法

中使用它
public function process()
{
  consolidated_errors= Utils.another_method($all_params_error);
 }                                                                   
}