Wat zijn de voordelen van PHP 8.1 en de commando's om te upgraden vanaf een oudere versie op Nginx?
Nieuwe functies en verbeteringen in PHP 8.1
PHP 8.1 is de nieuwste versie van de populaire server-side scripttaal en brengt een reeks nieuwe functies en verbeteringen met zich mee die het een aantrekkelijke keuze maken voor ontwikkelaars. In dit artikel belichten we enkele van de belangrijkste voordelen van een upgrade naar PHP 8.1.
Allereerst introduceert PHP 8.1 een aantal prestatieverbeteringen die het sneller en efficiënter maken dan eerdere versies. Dit wordt bereikt door verschillende optimalisaties, zoals de JIT (Just-In-Time) compiler, die code tijdens runtime omzet in machineleesbare instructies, en de union types-functie, die efficiëntere typecontrole mogelijk maakt. Deze en andere verbeteringen resulteren in aanzienlijke prestatiewinsten, wat vooral gunstig kan zijn voor websites en applicaties met veel verkeer.
Een ander voordeel van PHP 8.1 is de verbeterde foutafhandeling en debugging-mogelijkheden. De nieuwe throwable errors-functie stelt ontwikkelaars in staat om fouten effectiever op te vangen en af te handelen, terwijl het verbeterde typesysteem het gemakkelijker maakt om problemen vroeg in het ontwikkelproces op te sporen en op te lossen. Bovendien maakt de nieuwe "match" expression-functie meer beknopte en expressieve code mogelijk, wat het debuggen en onderhouden kan vergemakkelijken.
PHP 8.1 introduceert ook een aantal nieuwe taalfuncties die het krachtiger en flexibeler maken. De eerder genoemde union types-functie stelt ontwikkelaars in staat om meerdere mogelijke typen voor een variabele op te geven, wat vooral nuttig kan zijn bij het werken met externe bibliotheken of API's. De nieuwe "constructor property promotion"-functie stelt ontwikkelaars in staat om hun code te vereenvoudigen door de noodzaak om overbodige getters en setters te schrijven te elimineren, terwijl de nieuwe "attributes"-functie ontwikkelaars in staat stelt metadata toe te voegen aan klasseleden, functies en andere taalconstructies.
Commando's om te upgraden naar PHP 8.1 op een Nginx-server op Ubuntu
Voor dit artikel gebruiken we Ubuntu
sudo apt update
sudo apt install lsb-release ca-certificates apt-transport-https software-properties-common -y
sudo add-apt-repository ppa:ondrej/php
sudo apt install php8.1
sudo apt install php8.1-{imagick,bz2,curl,intl,mysql,readline,xml,fpm,mbstring,zip,bcmath,gd}
Update de Nginx server blocks
Bewerk het server block voor de domeinen waarvoor u de PHP 8.1-versie wilt gaan gebruiken. Ik gebruik nano als mijn teksteditor, maar u kunt vim, vi of een andere teksteditor naar keuze gebruiken.
nano /etc/nginx/sites-available/yoursiteone.com
nano /etc/nginx/sites-available/yoursitetwo.com
U zou een regel moeten vinden die lijkt op: fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
en vervang het nummer van de huidige PHP-versie, in mijn geval 7.4, door 8.1.

Nadat u de Nginx-server opnieuw hebt gestart met: service nginx restart
, zullen uw site(s) PHP 8.1 gaan gebruiken
U kunt meer leren over server blocks in Nginx op:
Hoe Nginx server blocks in te stellen
Als u DDEV gebruikt voor uw lokale omgeving, kunt u de volgende opdracht gebruiken om te upgraden naar PHP 8.1:ddev config --php-version 8.1
Meer informatie over DDEV vindt u op deze link.
Samenvattend biedt PHP 8.1 een aantal voordelen die het een aantrekkelijke keuze maken voor ontwikkelaars. De prestatieverbeteringen en verbeterde foutafhandeling maken het sneller en betrouwbaarder, terwijl de nieuwe taalfuncties het krachtiger en flexibeler maken. Als u momenteel een oudere versie van PHP gebruikt, wordt een upgrade naar PHP 8.1 sterk aanbevolen.