Зачем статическому классу обязательно прописывать метод конструктора? Интересует момент с статическим классом, по большому счету я использую классы, как набор данных с методами и при необходимости обращаюсь конкретно к какому то методу, но когда я создаю класс без конструктора именно статический класс, php выдает ошибку.
Пример кода:class Router {
static protected $url;
static protected $path;
static public $param = array();
static public $page;
public function __construct(){

}
static function url() {
self::$url = parse_url('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
self::$path = explode('/',self::$url['path']);
foreach (self::$path as $el) {
if (empty($el)){continue;}
self::$param[] = urldecode(trim($el));
}
self::$param[0] = !isset(self::$param[0]) ? 'show' : self::$param[0];
self::$page = self::$param[0];
}
static function router (){
$sql = SQL::getInstance();
$sql->where(false,'page');
$sql->add('page',self::$page);
$sql->query();
if ($sql->sum()){
include PATH;
}else{
include HOME;
}
}
}

21 Авг 2019 в 07:09
215 +1
0
Ответы
1

Статический класс в PHP должен иметь конструктор, потому что статические методы и свойства класса могут быть доступны без создания экземпляра класса. Когда вы создаете статический класс без конструктора, PHP не будет автоматически вызывать какой-либо метод при загрузке класса, и это может привести к некорректной инициализации статических свойств или методов.

Конструктор в статическом классе может использоваться для инициализации статических свойств или выполнения каких-либо действий, которые должны произойти при загрузке класса.

В вашем примере, конструктор статического класса Router пуст, потому что нет нужды выполнять какие-либо действия при создании экземпляра класса, но он все равно должен быть определен, чтобы избежать ошибок в PHP. Если вам не нужен конструктор, вы можете оставить его пустым, как в вашем примере.

20 Апр в 13:06
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 84 706 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир