2016-09-27 11 views
2

PSR-2PSRとコンストラクタ可視性

によると、可視性が

すべてのプロパティとメソッドに宣言されていますが、何、それは特定の機能__constructについてです、それはまたでマークされなければならない場合、私は思っていたしなければなりませんPSRを使用している場合のデフォルトはpublicですか?

答えて

3

はい、__construct()メソッドの可視性も宣言する必要があります。場合によっては、__constructは公開されていません。

abstract class Singleton { 

    private static $instances; 

    final public static function getInstance() { 
     $className = get_called_class(); 

     if(isset(self::$instances[$className]) == false) { 
      self::$instances[$className] = new static(); 
     } 
     return self::$instances[$className]; 
    } 

    protected function __construct() { } 

}