Seite 1 von 2

"The /e modifier is no longer supported"??

Verfasst: 01.02.2016 13:05
von Brakus
Servus,

ich wollte gerade ein Posting in meinem Forum absetzen, da erhalte ich folgende Meldungen:

Code: Alles auswählen

[phpBB Debug] PHP Warning: in file [ROOT]/includes/message_parser.php on line 86: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 5282: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3903)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 5282: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3903)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 5282: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3903)


Die eingegebene Nachricht ist zu kurz.

Das Posting umfasst einige hundert Wörter, dürfte also nicht "zu kurz" sein.
Die debug-Meldungen sagen mir leider gar nichts!

Kann mir hierbei bitte jmd. helfen, ich muss das Schreiben alsbald "loswerden" :/.


edit: es ist "3.1.7-pl1" installiert, der 1&1-Server auf PHP7 eingestellt und ich bin als Admin angemeldet.

Danke^^

Re: "The /e modifier is no longer supported"??

Verfasst: 01.02.2016 13:19
von Brakus
Ok, das Problem hat sich vorläufig von selbst erledigt. Als ich im edit nachtrug, dass PHP7 eingestellt ist, kam ich drauf, mal wieder auf 5.6 zurückzustellen und schon klappts wieder mit dem Posting!

Dann die Frage, ob phpBB an php7 bald angepasst(er) wird?

Re: "The /e modifier is no longer supported"??

Verfasst: 01.02.2016 13:44
von gn#36
phpBB 3.1 wird kein PHP 7 unterstützen, das kommt erst mit phpBB 3.2, die notwendigen Änderungen an 3.1 wären zu groß. Hier äußern sich zwei Entwickler zu dem Thema.

Re: "The /e modifier is no longer supported"??

Verfasst: 01.02.2016 17:19
von Brakus
ah, ok, danke!

Re: "The /e modifier is no longer supported"??

Verfasst: 06.04.2016 20:08
von Tuxman
Nur, weil ich gerade daran sitze: phpBB 3.1 läuft durchaus mit PHP 7.0.x. Korrigiert werden müssen "nur" Cache (wenn da bisher "null" eingestellt war, muss der Treiber in "Dummy" umbenannt werden) und preg_replace in den BBcodes, der Rest scheint (oberflächlich) zu gehen. Is' immer ärgerlich, wenn man erst ein Update macht und dann erst guckt, was auf dem Server alles laufen muss.

Re: "The /e modifier is no longer supported"??

Verfasst: 07.04.2016 09:17
von Talk19zehn
Hi Tuxman, richtet sich deine Info an die phpBB-Entwickler, so dass es dann ja eine kompatible für phpBB-Version 3.1.x geben könnte, wenn sie deinen Ideen folgen?
Wo müssen für phpBB 3.1 nur ein paar kleine Änderungen gemacht werden, so dass es mit PHP 7 doch noch läuft? Denn was du genau geändert hast / geändert werden muss, weiß ich nicht so genau. Wäre für mich interessant, wenn du dies erläuterst.

Danke und LG

Re: "The /e modifier is no longer supported"??

Verfasst: 07.04.2016 10:09
von Tuxman
Momentan verzweifle ich noch daran, die BBCode-Umwandlung so hinzubiegen, dass sie auch ohne Warnung funktioniert. Das scheint (?) die einzige größere Hürde zu sein. Das andere Problem ist, dass "null" in PHP 7.0.x ein reservierter Name ist, phpBB standardmäßig (guck' mal in deiner config.php) aber den "null"-Cachetreiber verwendet. Hier kann man problemlos den Patch für phpBB 3.2 weiterbenutzen:
  1. "null" in der config.php durch "dummy" ersetzen.
  2. In der Datei /phpbb/cache/driver/null.php die Klasse "null" in "dummy" umbenennen und die Datei selbst natürlich auch.
Dieser Patch allein lässt das Forum zumindest benutzbar werden, aber BBcodes gehen dann nicht. :D
Wahrscheinlich genügt es, in der Datei /includes/bbcode.php Zeile 494 mit einem Aufruf preg_replace_callback() zu ersetzen. Ich habe aber noch nicht genau herausgefunden, wie das ohne PHP-Fatal-Error funktioniert. Das ist aber auch immer störrisch...

Re: "The /e modifier is no longer supported"??

Verfasst: 07.04.2016 13:01
von gn#36
Der Teil mit den BBcodes ist genau der Knackpunkt - die phpBB Entwickler haben letztlich die ganze bbcode Engine ersetzt für 3.2. Wäre es nur um das Cache Problem gegangen wäre phpBB 3.1 mit Sicherheit schon lange PHP 7 kompatibel.

Re: "The /e modifier is no longer supported"??

Verfasst: 07.04.2016 13:20
von Tuxman
So weit ich das beurteilen kann, wäre die "alte" BBCode-Engine doch problemlos weiterhin benutzbar. PHP 7 unterstützt "nur" den Callback-Modifier nicht mehr, weshalb man stattdessen die andere Funktion nutzen muss.

Re: "The /e modifier is no longer supported"??

Verfasst: 07.04.2016 22:05
von canonknipser