PHP är ett av de mest populära skriptspråk som finns på webben idag. Enligt W3Texhs används PHP av över 78% av alla webbplatser som använder ett programmeringsspråk på serversidan.

Detta innebär att för nästan 8 av 10 webbplatser du besöker, använder de mest troligt PHP i någon form vilket också innebär att PHP inte är dött Och det spelar naturligtvis en mycket viktig roll för WordPress-ekosystemet, eftersom hela CMS:et är byggt på PHP.

Behöver du snabbt kontrollera din PHP-version? Skapa en phpinfo-sida.

Ett dilemma vi står inför idag är att många företag, utvecklare och värdar har halkat efter när det gäller att stödja de senaste PHP-versionerna. Något av statistiken nedan kanske chockerar dig. Idag vill vi diskutera några av anledningarna till att det är så viktigt att alla använder de senaste PHP-versionerna, inte bara av säkerhetsskäl utan också för bättre prestanda och stöd.

Gamla PHP-versioner

Som med alla programvaror, har PHP en release-cykel de måste följa för att fortsätta driva saker framåt och göra förbättringar.  Varje större utgåva av PHP har normalt full support för två år efter dess release. Under den tiden är buggar och säkerhetsproblem lösta och patchade regelbundet.

Stödda PHP-versioner för WordPress

Stödda PHP-versioner för WordPress

PHP 5.6, 7.0 och PHP 7.1 End of Life

End of Life betyder att dessa versioner inte längre kommer att få säkerhetsstöd och kan vara utsatta för opatchade säkerhetsproblem.

Enligt den officiella WordPress Stats-sidan, är i skrivande stund över 35% av WordPressanvändare fortfarande på PHP 5.6 eller lägre. Om du kombinerar detta med PHP 7.0 och 7.1 använder hela 64% av användarna för närvarande PHP-versioner som inte längre stöds från och med december 2019.

Det är ännu läskigare om du tittar på statistiken utanför WordPress-communityt. Enligt W3Techs används PHP 5 för närvarande av 55,8% av alla webbplatser som använder PHP.

64% av WordPress-användare använder för närvarande PHP-versioner som inte längre stöds! 😮Click to Tweet

Detta är inte bara dåligt ur ett säkerhetsperspektiv, men också för att det fortfarande finns en stor del av WordPress-webbplatser som inte utnyttjar de ytterligare prestandaförbättringarna med PHP 7.

WordPress PHP versionsstatistik

WordPress PHP versionsstatistik

Varför är antagandet av nyare versioner så långsamt?

Den främsta orsaken till bristen på snabbare antagande för nya versioner handlar sannolikt om några olika faktorer:

Men med det sagt, är det fortfarande inte en ursäkt att använda PHP-versioner som är inaktuella, inte stöds, och faktiskt kan bromsa ner din WordPress-webbplats. Den goda nyheten är att vissa framsteg görs.  Jordi Boggiano, medgrundare av Private Packagist, sätter ihop en rapport varje år om PHP-användningsstatistik. Och som du kan se nedan går utvecklingen något framåt. Detta är naturligtvis bara ett urval av Composer-installationer, men ändå intressant att se ändringarna.

PHP-användningsstatistik

PHP-användningsstatistik – sammanställt av Jordi Boggiano

Anledningar till att uppdatera PHP-versioner

Kolla in några av anledningarna nedan varför du bör tänka på att uppdatera om du inte redan har gjort det.

1. Säkerhet

En av de viktigaste anledningarna till att uppdatera PHP är att se till att du kör på en version som stöds fullt ut och patchas regelbundet för säkerhetsproblem. PHP 5.4 har inte patchats sedan 2015. Och PHP 5.5 har inte patchats sedan 2016. Det är dock viktigt att notera att vissa operativsystemsleverantörer fortfarande uppdaterar äldre versioner av PHP om de inkluderar det.

Enligt CVE Details var 2016 ett av de värsta åren för säkerhetssårbarheter i PHP med över 100 inrapporterade problem. Dessa inkluderade DoS, kodutförande, overflow, minneskorruption, XSS, katalogöverträdelser, bypass, och informationstyper. 2017 var det tredje värsta året sedan 2000, med över 40 sårbarheter.

PHP säkerhetssårbarheter per år

PHP säkerhetssårbarheter per år

Även PHP själva ger lite feedback om att hålla sig uppdaterad:

PHP, som alla andra stora system, är under konstant granskning och förbättring. Varje ny version kommer ofta att omfatta både stora och mindre förändringar för att förbättra säkerheten och reparera eventuella brister, konfigurationsmissöden, och andra frågor som kommer att påverka den totala säkerheten och stabiliteten i ditt system. Liksom andra skriptspråk och program på systemnivå är det bästa sättet att uppdatera ofta och hålla sig uppdaterad om de senaste versionerna och deras ändringar. PHP, Keeping Current

2. Prestanda

Med lanseringen av PHP 7.2 och PHP 7.3, och 7.4 kom enorma prestandavinster! I själva verket så stora att det bör vara en prioritet över en hel del av de små optimeringar du kan leka med på din WordPress-webbplats. Följande benchmarks demonstrerar betydande prestandaförbättringar med PHP 7 jämfört med dess tidigare iterationer. PHP 7 låter systemet utföra dubbelt så många förfrågningar per sekund jämfört med PHP 5.6, med nästan hälften så mycket latens.

php 5.6 vs php 7

PHP benchmarks av Rasmus Lerdorf, PHP Fluent Talk

Vi körde också våra egna PHP benchmarks. Och på liknande resultaten ovan såg vi att PHP 7.3 kunde utföra nästan tre gånger så många transaktioner (förfrågningar) per sekund jämfört med PHP 5.6. PHP 7.3 är också i genomsnitt 9% snabbare än PHP 7.2.

WordPress 5.0 PHP benchmarks

WordPress 5.0 PHP benchmarks

Christian Vigh publicerade också en PHP prestandajämförelse där han fann att PHP 5.2 var 400% långsammare än PHP 7.

Jämförelse av rena CPU benchmark-resultat

Jämförelse av rena CPU benchmark-resultat

3. Support

Support är en annan anledning till att du bör använda de senaste och stödda PHP-versionerna. Många gånger kan utvecklare av plugin och teman hittills bara ge support för äldre versioner. Mycket av detta beror på tidsbegränsningar och att inte ha tid att testa kompatibilitet. Saker kommer så småningom att brytas när du kör på gamla versioner, och du kan se detta hända första hand i WordPress-forumen. Här är ett vanligt fel, som vanligtvis orsakas av en äldre PHP-version och hur det behandlar en viss funktion:

Parse error: syntax error, unexpected '' (T_VARIABLE), expecting function (T_FUNCTION) in /pub/file.php on line xxx

Du kan göra en sökning i WordPress forum för ”unexpected T_Function” och det resulterar i över 2,000 trådar, många med resultat från inom de senaste dagarna. Här är bara ett par av de senaste, allt på grund av gamla versioner av PHP:

Många av dessa trådar öppnas på grund av att de körs på föråldrade versioner av PHP. Men samma sak kan också sägas om att trådar är öppna på grund av PHP 7-kompatibilitetsproblem. Vilket visar att WordPress utvecklarcommunityt fortfarande försöker komma ikapp med nyare versioner av PHP.

4. Nya funktioner för utvecklare

De flesta WordPress-utvecklare skulle föredra att bara arbeta på nyare versioner av PHP om de kunde, helt enkelt på grund av det faktum att det så många nya funktioner har lagts till mellan PHP 5.2 och PHP 7.4. Några ändringar med PHP 7 och 7.3 inkluderar:

Det är inte roligt att stödja gamla versioner av någonting. Tyvärr tvingas många utvecklare stödja ett brett utbud av versioner.

Se till att din värd stöder de senaste PHP-versionerna

Det tog ett tag, men de officiella WordPress.org-kraven rekommenderar nu en värd som kör PHP version 7.3 eller senare.

Yoast publicerade nyligen en bra artikel som heter ”Whipping Your Host Into Shape”. I artikeln går Joost De Valk in i detalj på hur det verkliga problemet är att webbhotell inte antar detta snabbare, och även om de gör det, uppmuntrar de inte användarna att uppgradera. Och Yoast kommer att göra något åt det. Från och med Yoast SEO 4.5, kommer de att börja visa ett meddelande på WordPress-panelen för webbplatser som körs på PHP 5.2.  Detta meddelande kommer att vara stort, fult och kan inte tas bort.

PHP 7 är framtiden (och det är bra och snabbt). 🚀 -- Joost de Valk via @yoast @kinstaClick to Tweet

Om vi kunde ge Yoast en high five, skulle vi absolut göra det! Kinsta har stött de senaste stabila versionerna av PHP 7.2, 7.3 och 7.4 ända sedan deras stabila utgåvor.

Faktum är att varje ny WordPress-installation här på Kinsta som standard använder PHP 7.3. Och PHP 7.2 är den äldsta versionen vi tillåter i vår miljö.

Vi är dedikerade till att köra den snabbaste och säkraste miljön på marknaden och det innebär att vi måste se till att alla webbplatser använder teknik som aktivt tar emot säkerhetsuppdateringar.

Kolla in vår djupgående guide med steg för steg instruktioner om hur du säkert kan uppdatera PHP på din WordPress-webbplats.

Kontrollera din nuvarande version av PHP

Kanske vet du inte vilken version av PHP din WordPress-webbplats för närvarande körs på. Kolla in dessa olika sätt nedan för att ta reda på det.

1. Kontrollera PHP-versionen med Pingdom

Ett av de enklaste sätten att kontrollera vilken version av PHP som du kör är att använda ett verktyg som Pingdom eller Google Chrome Devtools. Den första HTTP-begäranrubriken visar vanligtvis versionen.

Kontrollera PHP-versionen i Pingdom

Kontrollera PHP-versionen i Pingdom

Detta bygger på att värden inte ändrar X-Powered-By-rubrikvärdet. Vissa kan ta bort detta i syfte att förbättra säkerhet. Om de gör det kanske du inte ser din PHP-version, och då skulle du behöva använda det andra
alternativet nedan. Eller så kan du nå ut till din värd och fråga.

2. Kontrollera PHP versionen i WordPress

Om du kör WordPress 5.0 eller högre kan du se PHP-versionen under ”Site Health” -verktyget.

WordPress site health verktyg PHP verision

WordPress site health verktyg PHP verision

3. Kontrollera PHP-versionen med fil

Du kan också kontrollera din PHP-version genom att ladda upp en fil via FTP till din server.

Steg 1

Skapa en tom fil som heter phpinfo.php. Klistra in följande innehåll i filen:

Kämpar du med driftstopp och WordPress-problem? Kinsta är hosting-lösningen som är utformad för att spara tid! Kolla in våra funktioner
<?php
echo 'Current PHP version: ' . phpversion();
?>

Steg 2

Ladda upp filen till roten på din WordPress-webbplats.

Ladda upp phpinfo.php-filen

Ladda upp phpinfo.php-filen

Steg 3

Bläddra sedan till platsen för din fil, domain.com/phpinfo.php. Du bör då se en avläsning av din nuvarande PHP-version.

Kontrollera PHP-versionen i webbläsaren

Kontrollera PHP-versionen i webbläsaren

Vad borde mindre tekniskt kunniga användare eller de med mindre budgetar göra?

Vi inser att det fortfarande finns tusentals WordPress-webbplatser där ute som är inkompatibla med nyare PHP-versioner, oavsett om det beror på ett gammalt plugin eller tema. Det är de mindre tekniskt kunniga användare eller de med en mycket liten budget som står inför den största utmaningen; vad är det bästa tillvägagångssättet? Vi stöter på detta hela tiden med kunder som migrerar till Kinsta och när PHP-versioner når sin EOL (End of Life).

Här är några rekommendationer:

  1. Detta bör vara självklart, men uppdatera alltid dina plugin och teman till den senaste versionen om du inte redan har gjort det.
  2. Nå ut till utvecklaren av pluginet eller temat och be dem att lägga till/fixa stöd för PHP 7.2, 7.3 eller 7.4 (eller den aktuella versionen du försöker uppdatera till). Vi ger kunderna en förvarning innan vi fasar ut PHP-versioner så att de har gott om tid att göra detta om det behövs. Detta är särskilt viktigt för de med mindre budget som inte har råd att helt enkelt anlita en utvecklare.
  3. Hitta ett alternativt plugin som kan leverera samma funktionalitet och är kompatibel med PHP-versionen. Tack vare det massiva WordPress-arkivet och tusentals premiumplugin och teman på marknaden, kan du nästan garantera att det finns ett alternativ för allt.
  4. För dem som har budgetarna, anlita en WordPress-utvecklare att åtgärda problemet.

Så här uppdaterar du PHP

Redo att uppdatera? Bra, men en av de allra första saker du bör göra är att testa din webbplats för att säkerställa kompatibilitet. Du kan testa din WordPress-webbplats lokalt eller ännu bättre, utnyttja en staging-miljö, eftersom detta närmare liknar en live-produktionsplats. Det är bättre att vara ta det säkra före det osäkra!

Om du är Kinsta-kund kan du enkelt skapa en staging-miljö med ett enda klick. Ändra PHP-versionen från instrumentpanelen och börja testa.

WordPress staging-miljö

WordPress staging-miljö

Och kom ihåg, om du uppgraderar från en gammal version av PHP, se till att du också uppgraderar din WordPress-installation. En ny version av PHP med en 2 år gammal version av WordPress kommer förmodligen inte att ge ett bra resultat. När du har testat din webbplats och är redo att uppdatera PHP kommer här några resurser för att komma igång snabbt.

Kolla in vår djupgående guide med steg för steg-instruktioner om hur du säkert kan uppdatera PHP på din WordPress-webbplats.

Uppdatera PHP Med Kinsta

Om du är Kinsta-kund kan du enkelt ändra versionen av PHP genom att klicka på din webbplats, gå till ”Verktyg” och välja en annan PHP-motor. Vi har för närvarande PHP 7.2, 7.3 och 7.4 tillgängliga. Obs: Vi publicerade utfasningsdatum för PHP 5.6 till 7.1 ovan.

Ändra till PHP 7.

Ändra till PHP 7.4

Uppdatera PHP från cPanel

Om din värd använder cPanel har de troligtvis redan ett alternativ tillgängligt för dig att ändra din version av PHP. Logga helt enkelt in på cPanel och under ”programvara”-kategorin, klicka på ”Välj PHP-Version.”

Välj PHP-version i cPanel

Välj PHP-version i cPanel

Du kan sedan välja de PHP-versioner som din värd stöder.

PHP 7 i cPanel

PHP 7 i cPanel

Uppdatera PHP manuellt på servern

Om du driver hanterar din egen server rekommenderar vi att du kollar in den officiella PHP-installationsdokumentationen, eftersom instruktionerna varierar per operativsystem. Du bör titta på ändringarna av funktioner, klasser, omslag, tillägg, moduler, etc. Här är några länkar till migreringsguider:

Sammanfattning

Nu är det dags att tänka på att uppgradera till PHP 7.4 om du inte redan har gjort det. Inte bara för att du vill köra på programvara som stöds, men du är garanterad prestandafördelar!  Om din nuvarande WordPress-värd inte stöder PHP 7.4 än, uppmuntrar vi dig starkt att söka efter ny värd. Och likaså med teman och plugins. Om utvecklaren ännu inte har släppt en patch kan det vara dags att hitta ett alternativ.

Har du nyligen migrerat till PHP 7? Vi vill gärna höra dina tankar nedan. Var det en lätt övergång? Eller kanske är du fortfarande fast med att vänta på en 3:e part.


Om du tyckte om den här artikeln, då kommer du att älska Kinsta´s hosting-plattform. Effektivisera din hemsida och få support dygnet runt från vårt rutinerade team på WordPress. Vår Google Cloud-drivna infrastruktur fokuserar på auto-skalning, prestanda och säkerhet. Lås oss visa dig skillnaden med Kinsta! Kolla in våra paket