2017-01-09 3 views
1

Я изучаю php, и я немного запутался. Должен ли я использовать GetInstance (как одноточечный) или я могу создать новый объект (как в методе test2)Доступ к методу класса

class myclass { 
    private static $instance; 

    public static function getInstance(){ 
     if(is_null(self::$instance)){ 
      self::$instance = new self();} 
     return self::$instance; 
    } 

    public function printVar($var){ 
     echo 'Your var is : ' . $var . '<br/>'; 
    } 

    public static function test1($var){ 
     $myclass = myclass::getInstance(); 

     for($i = 0; $i < 2; $i++){ 
     $myclass->printVar($i); 
     } 
    } 

    public static function test2($var){ 
     $myclass = new myclass(); 

     for($i = 0; $i < 2; $i++){ 
     $myclass->printVar($i); 
     } 
    } 
} 

ответ

0

Если вы хотите сборки одиночки - вы должны использовать getInstance, в противном случае вы не должны делать это.
Для получения дополнительной информации вы можете обратиться к design patterns.