В соответствии с PSR-2
Видимость ДОЛЖНА быть объявлена для всех свойств и методов.
но что насчет __construct
, это особая функция, и мне было интересно, если она также должна быть помечена по умолчанию как public
когда мы используем PSR
?
Да, вы также должны объявить видимость для метода __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() { }
}
Других решений пока нет …