PHP 8.0 ist veröffentlicht.

Was die neue Ver­si­on bringt, wel­che Per­for­mance mög­lich ist und wer unbe­dingt umstel­len soll­te, dazu erfah­ren Sie etwas in die­sem Artikel.

PHP — was ist das eigentlich?

PHP, in Urzei­ten ein­mal Per­so­nal Home­page Tools genannt, jedoch schon lan­ge bekannt als Hyper­text Prepro­ces­sor, hat sein Debüt im Jah­re 1995 gege­ben. Seit­her ist es ein (aus dem Web nicht mehr weg­zu­den­ken­der) Grund­pfei­ler gewor­den. PHP ist eine ser­ver­sei­ti­ge Pro­gram­mier­spra­che und wird zum Betrieb von Web-Anwen­dun­gen benö­tigt. Die über­wie­gen­de Zahl der Con­tent-Manage­ment-Sys­te­me (z.B. auch Word­Press) lau­fen auf die­ser Platt­form. Mit neu­er Ver­si­on wer­den auch neue Funk­tio­nen und Befeh­le ver­öf­fent­licht. Dies ist eher für Pro­gram­mie­rer interessant.

Für Unter­neh­men ist beson­ders rele­vant, dass sich die Ver­bes­se­rung der Lade­zeit auf alle Web-Anwen­dun­gen aus­wirkt. Egal ob es sich um eine Web­sei­te, einen Web­shop, ein Kun­den­por­tal oder ein Down­load-Cen­ter han­delt: alle ver­wen­de­ten Sys­te­me in einem auf PHP 8 ein­ge­stell­ten Web­hos­ting pro­fi­tie­ren von den Neue­run­gen und Optimierungen.

PHP8? Ich habe doch noch PHP5!

Bis­lang galt die PHP Ver­si­on 7 als Sta­te of the Art. Davor war es PHP 5. Auch heu­te noch errei­chen uns Anfra­gen von Kun­den, die in ihren Web­hos­ting-Abrech­nun­gen eine zusätz­lich Zei­le fin­den, die sehr blu­mi­ge Namen haben wie: „Exten­ded PHP5 Plat­form Sup­port“ oder „PHP5 Lega­cy Support“.

Damit ist gemeint, dass der Web­hos­ting-Betrei­ber für die­se Kun­den noch eine bereits ver­al­te­te Ver­si­on von PHP betreibt, auch wenn die­se ein poten­zi­el­les Sicher­heits­ri­si­ko für den Ser­ver dar­stellt. Dafür, dass der Hos­ter dann ande­re Sicher­heits­me­cha­nis­men hoch­re­geln und ste­tig pfle­gen muss, ver­langt die­ser ent­spre­chend eine monat­li­che Pauschale.

Soll­te noch ein sol­ches erwei­ter­tes PHP 5 Pfle­ge­pa­ket exis­tie­ren, kön­nen Unter­neh­men mit einem Update auf PHP-Ver­si­on 8 gleich zwei Flie­gen mit einer Klap­pe schlagen:

  1. Die Sys­tem­si­cher­heit wird maß­geb­lich ver­bes­sert, die Gefahr von Hack­ing wird deut­lich reduziert.
  2. Die Kos­ten für die not­wen­di­ge Pfle­ge­pau­scha­le fal­len kom­plett weg. Eine gute Mög­lich­keit, Kos­ten einzusparen.

Unter­stüt­zung ver­schie­de­ner PHP-Versionen

Wie auf https://www.php.net/supported-versions.php zu sehen ist, wer­den Ver­sio­nen von PHP 5.6 bis ein­schließ­lich PHP 7.2 bereits heu­te (Janu­ar 2021) nicht mehr unter­stützt. Der rote Kas­ten bedeu­tet End of Life, also dass die­se Dis­tri­bu­ti­on tat­säch­lich am Lebens­en­de ange­kom­men ist.

Ver­sio­nen nach End of Life wer­den nicht mehr durch Sicher­heits­up­dates sei­tens der Ent­wick­ler unter­stützt und stel­len daher ein gro­ßes Sicher­heits­ri­si­ko dar. In Pro­duk­tiv-Umge­bun­gen soll­ten die­se nicht mehr ver­wen­det werden.

Ein wich­ti­ger Hin­weis an die­ser Stelle:

Wer­den der­art ver­al­te­te Ver­sio­nen ver­wen­det, so kann dies juris­tisch auch als gro­be Fahr­läs­sig­keit gewer­tet wer­den. Eine Haft­pflicht­ver­si­che­rung kann unter sol­chen Umstän­den die Scha­dens­re­gu­lie­rung (z.B. nach Hack­ing / Cyber Attack) ver­wei­gern, sodass mög­li­cher­wei­se der Unter­neh­mer selbst für den Scha­den haf­ten muss.

PHP 5.6 ist seit Janu­ar 2019 (!) am “End of Life” ange­kom­men und wird nicht wei­ter­ent­wi­ckelt. Es gilt als Sicherheitsrisiko!

PHP 7.0 ist seit Janu­ar 2019 (!) am “End of Life” ange­kom­men und wird nicht wei­ter­ent­wi­ckelt. Es gilt als Sicherheitsrisiko!

PHP 7.1 ist seit Dezem­ber 2019 am “End of Life” ange­kom­men und wird nicht wei­ter­ent­wi­ckelt. Es gilt als Sicherheitsrisiko!

PHP 7.2 ist seit Dezem­ber 2020 am “End of Life” ange­kom­men und wird nicht wei­ter­ent­wi­ckelt. Es gilt als Sicherheitsrisiko!

PHP 7.3 wird noch bis Dezem­ber 2021 unter­stützt. Die­se Ver­si­on kann (mit Stand heu­te, 03.01.2021) noch ca. 10 Mona­te pro­duk­tiv ver­wen­det werden.

PHP 7.4 wird noch bis Dezem­ber 2022 unter­stützt. Die­se Ver­si­on kann (mit Stand heu­te, 03.01.2021) noch fast 2 Jah­re pro­duk­tiv ver­wen­det werden.

PHP 8.0 ist frisch ver­öf­fent­licht wor­den und wird bis Dezem­ber 2023 unter­stützt. Im bes­ten Fall wird Ihre Web­sei­te / Web-Appli­ka­ti­on bereits jetzt (Janu­ar 2021) auf die­se Ver­si­on migriert, um die maxi­ma­le Lebens­zeit die­ser Ver­si­on mit deren posi­ti­ven Ent­wick­lun­gen zu nutzen.

Vie­le ver­al­te­te Web­hos­tings: Wie kommt das?

Ins­be­son­de­re Unter­neh­men haben oft gerin­ge Res­sour­cen, sich mit dem The­ma IT Secu­ri­ty tief­grei­fend zu beschäf­ti­gen. Dar­un­ter fällt auch ein Update der PHP-Ver­si­on der Web­sei­te. Wel­cher Grund auch immer dahin­ter steht: es ist eine nach­voll­zieh­ba­re Ent­schei­dung, beim Web­hos­ter zunächst ein­mal eine zusätz­li­che Pau­scha­le zu bezah­len, damit die­ser sich dar­um küm­mert, eine ver­al­te­te PHP-Ver­si­on am Lau­fen und die­se „nach bes­ten Kräf­ten sicher“ zu halten.

Doch damit ist das Pro­blem nur ver­tagt und nicht besei­tigt. Zwi­schen­zeit­lich fal­len für die Pfle­ge meh­re­re Hun­dert Euro an Kos­ten an, wel­che eigent­lich unnö­tig sind. Ruft man sich dann noch in Erin­ne­rung, dass PHP 5.6 am 28. August 2014 ver­öf­fent­licht wur­de, so kann man die­se Ver­si­on heu­te nicht mehr mit gutem Gewis­sen ein­set­zen. Das letz­te Sicher­heits­up­date hier­für stammt vom 10. Janu­ar 2019 und ist damit (nahe­zu) zwei Jah­re alt. Ein klei­ner Ver­gleich: Kraft­fahr­zeu­ge müs­sen in die­sem Rhyth­mus zum TÜV.

Wir tes­ten gera­de ver­schie­de­ne PHP-Ver­sio­nen in einem aus­führ­li­chen Test­sze­na­rio gegen­ein­an­der. Unse­re vor­sich­ti­ge Erwar­tung ist: PHP 5.6 wird im Test ver­mut­lich nicht die bes­te Per­for­mance erzeugen.

Was bringt PHP 8 neues?

Die neue Platt­form PHP 8 bringt vor allem zwei Din­ge mit sich: Per­for­mance und Sta­bi­li­tät

Was die Funk­tio­nen angeht, so ist die Lis­te beein­dru­ckend lang. Es wur­den in frü­he­ren PHP-Ver­sio­nen zwar auch oft­mals die Ver­si­ons­num­mern erhöht und trotz­dem vie­les an Alt­las­ten des vori­gen Quell­texts wei­ter­hin mit­ge­schleift. Dem­nach mach­te es kaum einen Unter­schied, ob man PHP 5.3, PHP 5.4 oder PHP 5.5 nutz­te. Mit PHP 7 begann der Pro­zess, dass grö­ße­re Tei­le des in die Jah­re gekom­me­nen PHP-Kerns umge­schrie­ben wur­den. So wur­den z.B. Return Pipes ein­ge­führt und myS­QL ent­fernt und durch das moder­ne­re myS­Q­Li ersetzt.

Mit PHP 8 gelang ein deut­lich erwei­ter­ter, neu­er PHP-Core, der vie­le lan­ge ange­kün­dig­te Funk­tio­nen ent­hält, so z.B.:

Beson­ders im Vor­der­grund steht der JIT Com­pi­ler (JIT steht für: Just in Time). Das ist eine inter­ne Lauf­zeit­um­ge­bung, wel­che ver­spricht, dass PHP-Funk­tio­nen qua­si in Echt­zeit aus­ge­führt wer­den. Der Unter­schied zur vori­gen Gene­ra­ti­on ist: Der PHP-Quell­text wird nicht, wie bis­lang üblich, vor sei­ner Lauf­zeit kom­pi­liert, son­dern Zei­le für Zei­le inter­pre­tiert. Der JIT Com­pi­ler kom­pi­liert jetzt also den PHP-Quell­text direkt wäh­rend der Lauf­zeit – und wirkt somit sehr ähn­lich wie eine voll­stän­dig gecach­te Ver­si­on des Codes.

Was habe ich als Web­site-Betrei­ber davon?

Im Ergeb­nis ist eine extre­me Beschleu­ni­gung bei der Aus­füh­rung spür­bar. Die Per­for­mance der Aus­füh­rung steigt, was der Benut­zer an einer schnel­ler auf­bau­en­den Web­sei­te (oder Web-Appli­ka­ti­on) bemerkt. Dies gilt sowohl für die Desk­top-Ver­si­on als auch für die Smart­phone-Ver­si­on. Die­sen Vor­teil wer­den die Besu­cher Ihrer Web­sei­te mit posi­ti­ven Nut­zer­si­gna­len belohnen.

Das kann sich dar­in äußern, dass die Besu­cher län­ger auf Ihrer Web­sei­te ver­wei­len (Ver­weil­dau­er steigt) oder auf der Web­sei­te noch wei­te­re Inhal­te anse­hen und mehr Tex­te und Infor­ma­tio­nen lesen (Page Views stei­gen). Dies sind sog. posi­ti­ve Nut­zer­si­gna­le. Die­se wer­den von Google gemes­sen und durch ein bes­se­res Lis­ten in der Such­ma­schi­ne belohnt, denn offen­bar sind die Infor­ma­tio­nen hilf­reich und ange­nehm zu lesen; das ist jeden­falls der Rück­schluss, den Google aus posi­ti­ven Nut­zer­si­gna­len zieht.

PHP 8 zu nut­zen kann Ihnen also zeit­gleich zu einem bes­se­ren Google-Ran­king ver­hel­fen. Sie kön­nen durch eine bes­se­re Per­for­mance und zugleich eine sta­bi­ler lau­fen­de Web­sei­te direkt etwas für Ihr Google-Ran­king tun.

Wel­chen Nut­zen bie­tet PHP 8 für Unternehmen?

Allei­ne durch die mas­siv ver­bes­ser­te Lade­zeit kön­nen sich posi­ti­ve Nut­zen ergeben:

  1. Besu­cher auf der Web­sei­te genie­ßen einen flüs­si­gen Ablauf beim Sur­fen auf der Webseite.
  2. Die Absprungra­te wird gesenkt.
  3. Das sog. Pogo-Sti­cking wird weniger.
  4. Google bewer­tet die Web­sei­te bes­ser und lis­tet sie poten­zi­ell auf bes­se­ren Plät­zen in den Suchergebnissen.

* Absprungra­te: wie vie­le Besu­cher ver­las­sen die Web­sei­te ohne Akti­on wieder.
** Pogo-Sti­cking: Besu­cher kom­men von Google, sind mit z.B. der Lade­zeit nicht zufrie­den und sprin­gen direkt zurück zu Google.

In Kür­ze stel­len wir unse­ren detail­lier­ten PHP Pra­xis­test vor, in dem wir vier ver­schie­de­ne PHP Ver­sio­nen in Bezug auf ihre Lauf­zeit und Per­for­mance prüfen.

Ein­fach upda­ten? Unse­re Handlungsempfehlung:

Die neue PHP 8 Platt­form bringt viel­ver­spre­chen­de Funk­tio­nen und ins­be­son­de­re auch mas­si­ve Beschleu­ni­gun­gen mit sich. Unter­neh­men soll­ten ihre Web­prä­senz unbe­dingt auf der neu­en PHP 8 Ver­si­on tes­ten. Dabei gilt es nicht nur die Lade­zeit zu betrach­ten, son­dern auch ins­be­son­de­re jede Funk­tio­na­li­tät der Web­sei­te zu prü­fen. Nur wenn alle Funk­tio­nen rei­bungs­los lau­fen, kann ein Update auf die neu­es­te Platt­form-Ver­si­on durch­ge­führt werden.

Wir emp­feh­len Ihnen daher:

Tes­ten Sie Ihre Web­sei­te inklu­si­ve aller Sub­sys­te­me (z.B. das Bestell­for­mu­lar, den inter­nen Kun­den­be­reich, die Chat-Funk­ti­on, den Online­shop) zunächst ein­mal auf einem Test-Ser­ver, der bereits über PHP 8 ver­fügt. Erst wenn alle Tests umfas­send abge­schlos­sen sind und jede Funk­ti­on nach­weis­lich auch auf der neu­en Platt­form funk­tio­niert, soll­ten Sie das Update auf der Live-Umge­bung durchführen.

Wenn Sie hier­bei Hil­fe benö­ti­gen, sind wir ger­ne für Sie da.