Rolf B: PHP Deprecated: Assigning the return value of new by reference

Beitrag lesen

Hallo pl,

Ein Framework muss von der Version der darunterliegenden Programmiersprache weitgehend unabhängig sein.

Genau. Und das bist Du nicht. Derzeit entwickelst und testest Du für PHP 5.3 und weißt nicht, was bei höheren Versionen passiert. Wenn dein Framework auf allen PHP Versionen von 5.3 bis zum aktuellen PHP läuft (7.4), dann ist es versionsunabhängig.

Mit wäre dieser Anspruch allerdings zu hoch. Man kann es machen, aber muss dann für 5.3 wissen, was geht, und für aktuell 9 Folgeversionen wissen, was alles geändert wurde und vermieden werden muss, damit es mit neuen Versionen immer noch geht. Hinzu kommt, dass seit 7.0 einiges geht wovon man unter 5.3 noch geträumt hat.

  • 5.4: Traits und Short Arrays [ 1,2,3 ]
  • 5.5: Generatoren (yield) und finally bei try/catch
  • 5.6: Variadische Funktionen mit Rest-Operator (function x($a, ...$rest))
  • 7.0: Typdeklarationen, Nullcoalescing, Spaceship

7.0 als Sockelversion wäre mir hinreichend. Die hatte Anfang diesen Jahres auch schon ihr End-of-Life, und die 7.1 vor 3 Wochen. Grundsätzlich bringt PHP jährlich eine neue Minor Version und pflegt ältere Versionen 2+1 Jahre lang. Danach bleiben sie liegen. Das ist in Perl seit 5.12 ja nicht anders.

Du solltest Dir definitiv PHP 7 anschauen und gucken, in wie weit diese uralte Template-Lib dorthin gerettet werden kann.

Rolf

--
sumpsi - posui - clusi