2010-05-10 2 views
108

На моем сервере запущена php 5.3, а My wordpress install выплевывает эти ошибки, заставляя меня отключить мой session_start().Отключить устаревшие ошибки php 5.3

Deprecated: Assigning the return value of new by reference is deprecated in /home//public_html/hub/wp-settings.php on line 647 

Deprecated: Assigning the return value of new by reference is deprecated in /home//public_html/hub/wp-settings.php on line 662 

Deprecated: Assigning the return value of new by reference is deprecated in /home//public_html/hub/wp-settings.php on line 669 

Deprecated: Assigning the return value of new by reference is deprecated in /home//public_html/hub/wp-settings.php on line 676 

Deprecated: Assigning the return value of new by reference is deprecated in /home//public_html/hub/wp-settings.php on line 712 

Это раздражает, но я не хочу отключать отображение сообщений об ошибках экрана. Как отключить эти назойливые устаревшие предупреждения?

Я бегу Wordpress 2.9.2.

+0

Не является ли текущая версия Wordpress актуальной версией? – Shadur

+0

ему кажется, что старый php со старым wordpress – Qchmqs

ответ

168

Вы можете сделать это в коде, вызвав следующие функции.

error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE); 

или

error_reporting(E_ALL^E_DEPRECATED); 
+0

Спасибо, Робус. Будет ли это убивать любые сообщения об ошибках php? – atwellpub

+6

Нет, первый в основном говорит, что php показывает ошибки ERROR/WARNING/PARSE/NOTICE, второй сообщает php, чтобы показать все, кроме ошибок DEPRECATED. – Robus

+2

Не работает –

6

Вы должны отредактировать конфигурационный файл PHP. Fin линии

error_reporting = E_ALL 

и заменить error_reporting = E_ALL^E_DEPRECATED

Если у вас нет доступа к файлу конфигурации вы можете добавить эту строку в файл PHP WordPress (возможно headers.php)

error_reporting(E_ALL^E_DEPRECATED); 
+0

Гораздо лучше добавить это в 'wp-config.php'. Он предназначен для редактирования с настройками конфигурации. – Nilpo

22

мне нужно адаптировать это к

error_reporting = E_ALL & ~E_DEPRECATED 
14

Все приведенные выше ответы верны. Поскольку никто не намекал, как отключить все ошибки в PHP, я хотел бы упомянуть об этом здесь:

error_reporting(0); // Turn off warning, deprecated, 
        // notice everything except error 

Кто-то может оказаться полезным ......

17

Чтобы получить только ошибки тех, привести к прекращению использования:

error_reporting(E_ALL^(E_NOTICE | E_WARNING | E_DEPRECATED)); 

Это прекратит показывать предупреждения, предупреждения и устаревшие ошибки.

7

В файле wp-config.php вы можете найти константу WP_DEBUG, убедитесь, что для нее установлено значение false.

define('WP_DEBUG', false); 

Это для WordPress 3.x

+0

спасибо, это был дополнительный шаг, который мне нужен. –

9

Я просто сталкивался с подобной проблемой, где SEO плагин выданную большое количество предупреждений, делающих мое использование диска блога превышает лимит плана.

я узнал, что вы обязательно включают команду error_reporting после WP-settings.php требуется в файле сор-config.php:

require_once(ABSPATH .'wp-settings.php'); 
    error_reporting(E_ALL^(E_NOTICE | E_WARNING | E_DEPRECATED)); 

, делая это не больше предупреждений, уведомлений ни устаревшие строки не добавляются в файл журнала ошибок!

Протестировано в WordPress 3.8, но я думаю, что это работает для каждой установки.

+0

Приятно, это решает проблему – Alex

1

Я предпочитаю использовать этот метод

$errorlevel=error_reporting(); 
$errorlevel=error_reporting($errorlevel & ~E_DEPRECATED); 

Таким образом, я не выключаю случайно то, что мне нужно

+1

Это дает вам меньше контроля. Вы предполагаете, что все, что в настоящее время настроено, правильно. Лучше установить его напрямую по мере необходимости, чтобы вы не получить перекрывающиеся конфигурации. – Nilpo

+0

Поймите. Каждый случай отличается. – realtebo

0

этой ошибка происходит при изменении версии PHP: это очень просто подавить эту ошибку сообщение

Чтобы подавить Устаревшее сообщение об ошибке, просто добавьте ниже кода в файл index.php:

init_set ('display_errors', False);

Смежные вопросы