Ошибки E_STRICT

GutsOut

Новичок
Здравствуйте, попытался поднять один проект на локальном компе, все ок, но ошибки E_STRICT отключились не все. В php.ini: error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT. Подскажите, пожалуйста, в чем может быть дело. Подчеркиваю, что некоторые Strict Standards исчезли, а некоторые остались.
 

Вурдалак

Продвинутый новичок
E_ALL & ~E_STRICT писать бессмысленно, потому что E_ALL уже исключает E_STRICT. Либо не тот php.ini, либо на другом уровне проставлен другой error_reporting (htaccess, ini_set), либо какой-то кастомный error handler, который игнорирует error_reporting.
 

GutsOut

Новичок
И почему когда error_reporting = E_ALL, то стриктов становится больше, а когда error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT- меньше?
 

Вурдалак

Продвинутый новичок
А, не, моя инфа устарела, E_STRICT включается в E_ALL с 5.4. А что за ошибки остаются?
 

GutsOut

Новичок
Вот некоторые из них:
Strict Standards: Static function Pg_Auth::getInstance() should not be abstract in D:\dev...
Strict Standards: Declaration of Fn_ForumUser::SetDataFromArray() should be compatible with Fw_User::SetDataFromArray($data) in D:\dev...


Также в проекте встречаются файлы с error_reporting(E_ALL); Как правильно отключать стрикты с помощью error_reporting()? error_reporting(E_ALL ^ E_STRICT), так?
 

GutsOut

Новичок
Спасибо, буду пытаться искать где проблема. А еще не знаете с какой версии стрикты ввели? Если не получится найти- запущу на более поздней версии.
 

GutsOut

Новичок
Решено, действительно в коде был error_reporting(E_ALL), изменил на E_ALL & ~E_STRICT и все ок. Вурдалак спасибо.
 
Сверху