WordPress Fehler – Warning: „continue“ targeting switch is equivalent to „break“

PHP Warnung Continue targeting switch is equivalent to break.

Ich hatte heute das WordPress-Blog einer Kundin auf eine Subdomain verschoben, weil sie die Seite in einer Art internen Bereich betreiben möchte. Die Hauptdomain soll dafür umgeleitet werden.

Nachdem ich in Ionos die Subdomain eingerichtet hatte und alle WordPress Daten ins neue Verzeichnis geladen hatte, bekam ich beim Aufruf der Login-Seite folgende Meldung:

Warning: „continue“ targeting switch is equivalent to „break“.

Dieser PHP-Fehler erschien auf der Seite vorher nicht, was mich etwas stutzig gemacht hat.

Diese PHP-Warnung kam bei der Webseite meiner Kundin: "Warning: continue targeting switch is equivalent to break." In diesem Fall lag es an einem veralteten Plugin, aber es gab auch Dateien im Theme, die den Fehler auslösten.

Diese PHP-Warnung kam bei der Webseite meiner Kundin: "Warning: continue targeting switch is equivalent to break." In diesem Fall lag es an einem veralteten Plugin, aber es gab auch Dateien im Theme, die den Fehler auslösten.

Fehlermeldung erscheint ab PHP 7.3

Mein Verdacht, dass die Fehlermeldung etwas mit der PHP-Version des Hostings zu tun hat, hat mich nicht getäuscht. Wie ich in der Hosting-Verwaltung gesehen habe, lief die Hauptdomain mit PHP 7.2, während Subdomain automatisch auf PHP 7.4 gestellt wurde.

Ich habe daraufhin die PHP Version der Subdomain auf PHP 7.2 geändert und siehe da: Der Fehler war verschwunden.

Bei Ionos kann man zu jeder Domain und Subdomain die PHP-Version auswählen.

Bei Ionos kann man zu jeder Domain und Subdomain die PHP-Version auswählen.

Die Umstellung kann man bei Ionos übrigens unter „Hosting-Übersicht“ und dann im Bereich „PHP“ finden.

Den Grund, warum hier eine Änderung in PHP gemacht wurde, findet man im PHP Wiki:

Wenn in PHP continue auf eine switch-Anweisung angewendet wird, verhält sie sich genauso wie break. In anderen Sprachen würde es stattdessen die umgebende Schleife fortsetzen. Um Verwirrung zu vermeiden, schlägt der RFC vor, continues, die auf switch wirken, zu verwerfen und zu entfernen.

Anpassen des Codes für PHP 7.3, 7.4 und folgende Versionen

Nun gab es ein kleines Problem: Ionos hat angekündigt, dass sie den Support von PHP 7.2 im Dezember 2020 beenden. Die Folge wäre, dass bei meiner Kundin von einem auf den anderen Tag die Fehlermeldungen aufpoppen würde – keine gute Werbung für sie.

Ich habe aus diesem Grund nach einer Lösung gesucht, um ihr altes Theme nochmal zu überarbeiten, damit es noch ein paar Jahre verwendet werden kann.

Um nun die Fehler zu beheben, kann man nun einen kleinen Befehl ändern, den man über die Fehlermeldung finden kann. Man sucht nach einer ähnlichen Formulierung wie dieser:

switch ($variable) {
    case "wert":
        continue;
}

und tauscht darin das „continue“ in ein „break“ aus:

switch ($variable {
    case "wert":
        break;
}

Auf diese Weise kann man die Fehler nach und nach beheben und sein WordPress wieder zum Laufen bekommen.

Wenn ihr Probleme mit eurem Blog habt, lasst es mich wissen. Ich biete mit einem Bekannten eine Art WordPress-Notfall-Hilfe und wir helfen Bloggern oder Unternehmen, wenn es darum geht, die Webseite wieder in Gang zu bekommen.


Gefällt dir mein Blog? Dann würde ich mich über eine kurze Bewertung bei Google freuen. Einfach hier kurz etwas hinterlassen – das wäre toll, danke!

2 Kommentare

  1. Bea sagt:

    Hallo, ich habe dieses Problem auch, meine Seiten zeigen: Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /WWWROOT/235512/htdocs/wp-content/plugins/slimjetpack/modules/infinite-scroll/infinity.php on line 147
    Werde nun nach deine Anleitung versuchen das zu lösen. LG vom schönen Niederrhein

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.