Mein Server führt PHP 5.3 aus, und meine Wordpress-Installation spuckt diese Fehler aus, wodurch mein session_start () unterbrochen wird.
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
Das ist ärgerlich, aber ich möchte die Bildschirmfehlerberichterstattung nicht deaktivieren. Wie deaktiviere ich diese lästigen veralteten Warnungen?
Ich verwende Wordpress 2.9.2.
Sie können dies im Code tun, indem Sie die folgenden Funktionen aufrufen.
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
oder
error_reporting(E_ALL ^ E_DEPRECATED);
Ich musste das anpassen
error_reporting = E_ALL & ~E_DEPRECATED
Um nur Fehler zu erhalten, wird die Anwendung nicht mehr verwendet.
error_reporting(E_ALL ^ (E_NOTICE | E_WARNING | E_DEPRECATED));
Dadurch werden keine Hinweis-, Warn- und veralteten Fehler mehr angezeigt.
Alle obigen Antworten sind richtig. Da niemand angedeutet hat, wie man alle Fehler in PHP ausschaltet, möchte ich es hier erwähnen:
error_reporting(0); // Turn off warning, deprecated,
// notice everything except error
Jemand könnte es nützlich finden ......
Ich war gerade mit einem ähnlichen Problem konfrontiert, als ein SEO-Plugin eine große Anzahl von Warnungen ausgegeben hat, die dazu führen, dass die Nutzung meines Blog-Datenträgers die Plangrenze überschreitet.
Ich habe herausgefunden, dass Sie müssen den error_reporting-Befehl after enthalten, den die wp-settings.php in der Datei wp-config.php benötigen:
require_once( ABSPATH .'wp-settings.php' );
error_reporting( E_ALL ^ ( E_NOTICE | E_WARNING | E_DEPRECATED ) );
dadurch werden keine weiteren Warnungen, Hinweise oder veralteten Zeilen an Ihre Fehlerprotokolldatei angehängt!
Getestet auf WordPress 3.8, aber ich denke, es funktioniert bei jeder Installation.
In der Datei wp-config.php finden Sie die Konstante WP_DEBUG. Stellen Sie sicher, dass sie auf false gesetzt ist.
define('WP_DEBUG', false);
Dies ist für WordPress 3.x
Sie müssen die PHP-Konfigurationsdatei bearbeiten. Die Linie abschließen
error_reporting = E_ALL
und ersetzen mit error_reporting = E_ALL ^ E_DEPRECATED
Wenn Sie keinen Zugriff auf die Konfigurationsdatei haben, können Sie diese Zeile zur PHP-WordPress-Datei hinzufügen (möglicherweise headers.php).
error_reporting(E_ALL ^ E_DEPRECATED);
Ich neige dazu, diese Methode zu verwenden
$errorlevel=error_reporting();
$errorlevel=error_reporting($errorlevel & ~E_DEPRECATED);
Auf diese Weise schalte ich nicht aus Versehen etwas aus, was ich brauche
Ersetzen Sie einfach den folgenden Code in der Datei wp-config.php
define ('WP_DEBUG', wahr); zu definieren ('WP_DEBUG', true);