Это означает, что ваш дочерний класс не совместим с родителем.Например:
class CI_Email
{
public function initialize($a, $b)
{
echo 'foo';
}
}
class MY_Email extends CI_Email
{
public function initialize($a)
{
echo 'bar';
}
}
Этот код вызовет ошибку ...should be compatible with...
, потому что если вы замените экземпляр My_Email
на CI_Email
, то будет пропущен обязательный параметр $b
.
Измените метод вашего дочернего класса 'initialize
, чтобы он содержал все те же параметры, что и родительский класс.Вы можете добавить дополнительные необязательные параметры, но вы не можете их убрать, поэтому вы можете сделать это:
public function initialize($a, $b, $c = 0) ...