Ошибка: «PHP Warning: Declaration of XXX should be compatible with XXX in …»

Решено

Здравствуйте, у меня такая проблема. После переноса сайта на хостинг, появилась ошибка:

PHP Warning: Declaration of XXX should be compatible with XXX in …

Да я знаю что можно просто отключить вывод ошибок в вордпресс или просто в php прописать:


error_reporting(0);

Но я хотел бы не прятать ошибку а понять ее причины и исправить ее. Буду благодарен за помощь.

Добавить Комментарий
    Ответ

    Вы скорее всего перешли на новый php 7(или у вас на хостинге он установлен)

    Вот пример как убрать ошибку если вы используете php 7

     // unsilenced
     class Fooable {
     public function foo($a, $b, $c) {}
     }
    // silenced
     @(function () {
     class ExtendedFooable extends Fooable {
     public function foo($d) {}
     }
     })();
     

    Но хочу сразу предупредить что данный код не будет работать с php 5. Для того что бы была поддержка как 5й так и 7й версией, придется использовать небольшой костыль:

     $_ = function () {
     class ExtendedFooable extends Fooable {
     public function foo($d) {}
     }
     };
     @$_();
     unset($_);
     
    Добавить Комментарий

    Ваш ответ

    Размещая свой ответ, вы соглашаетесь с правилами сайта.