PHP 8.4 (Beta 3) è ora disponibile per i test sui server SiteGround

PHP 8.4 (Beta 3) è ora disponibile per i test sui server SiteGround

Siamo lieti di annunciare che PHP 8.4 (Beta 3) è ora disponibile per i test su tutti i server SiteGround, molto prima della data di rilascio ufficiale prevista per il 21 novembre 2024. Ancora una volta, siamo tra le prime aziende a fornire PHP 8.4 (Beta 3) per i test sulla nostra piattaforma di hosting. Grazie alla nostra esclusiva configurazione del server PHP, siamo in grado di offrire le ultime versioni di PHP ai nostri clienti per testare in sicurezza sui loro siti web ospitati con noi.

Scopri di più sulle nuove funzionalità che l’ultima versione di PHP porta.

Novità in PHP 8.4 (Beta 3)

Questa ultima versione introduce alcune nuove funzionalità molto importanti che miglioreranno ulteriormente l’esperienza di sviluppo PHP. Immergiamoci in alcune delle più grandi modifiche che PHP 8.4 (Beta 3) offre:

Property hook

Una delle nuove funzionalità in PHP 8.4 (Beta 3) include la possibilità di definire property hook che elimineranno la necessità di molto codice boilerplate. Questo è uno dei più grandi cambiamenti nella storia di PHP. I property hook aiuteranno a rimuovere molti getter e setter consentendo a ogni proprietà di definire i propri get e set hook. Inoltre, un’aggiunta interessante è che in PHP 8.4 (Beta 3) i property hook possono essere definiti nelle interfacce.

Possiamo prendere questa classe piuttosto standard come esempio:

<?php
declare(strict_types=1);

class Website
{
   private $domain;

   public function __construct(string $domain) {
       $this->domain = $domain;
   }

   public function getDomain(): string {
       return $this->domain;
   }

   public function setDomain(string $domain): void {
       if (strlen($domain) === 0) {
           throw new ValueError("Domain must be non-empty");
       }
       $this->domain = $domain;
   }
}

A partire da PHP8.4 (Beta 3) possiamo utilizzare i Property Hook per ottenere lo stesso risultato con la seguente sintassi:

<?php
declare(strict_types=1);

class Website
{
   public string $domain {
       set {
           if (strlen($value) === 0) {
               throw new ValueError("Domain must be non-empty");
           }
           $this->domain = $value;
       }

       get => $this->domain;
   }

   public function __construct(string $domain) {
       $this->domain = $domain;
   }
}

Assenza di parentesi aggiuntive

Un’altra nuova funzionalità che farà risparmiare un sacco di codice boilerplate è che non dovrai più racchiudere gli oggetti appena creati tra parentesi per poter concatenare i metodi su di essi.

Inoltre, funziona non solo per i metodi: puoi anche concatenare proprietà, metodi statici, costanti, in pratica tutto ciò che vuoi. In conclusione, la nuova funzionalità semplificherà la sintassi e renderà il codice più conciso e leggibile.

Esempio:

La funzionalità “class member access on instantiation” è stata introdotta in PHP 5.4.0. Da allora, costanti, proprietà e metodi sono accessibili su un’istanza appena creata senza una variabile intermedia, ma solo se la nuova espressione è racchiusa tra parentesi:

class Website
{
   ...

   public function getDomain(): string {
       return $this->domain;
   }
}

// Valid syntax
$myDomain = (new Website('siteground.com'))->getDomain();

// Invalid syntax until PHP8.4
$myDomain = new Website('siteground.com')->getDomain();

Nuove funzioni Array

Un altro cambiamento degno di nota in PHP è l’introduzione di diverse nuove funzioni Array. PHP 8.4 ha introdotto diverse nuove funzioni array con funzione callback:

array_find()

Una funzione che restituisce il valore del primo elemento array che ha soddisfatto la condizione. Se nessuno degli elementi ha soddisfatto la condizione, la funzione restituirà ‘null’

array_find_key()

Restituisce la chiave del primo elemento per cui il callback era true. Se nessuno degli elementi ha soddisfatto la condizione, la funzione restituisce ‘null’

array_all()

Controlla se il callback restituisce true per tutti gli elementi array

array_any()

Controlla se il callback restituisce true per uno qualsiasi degli elementi di un array.

Queste nuove funzioni semplificano la ricerca e la manipolazione di array in base a condizioni personalizzate, il che in termini porterà a un codice più pulito e facile da leggere.

Come testare PHP 8.4 (Beta 3) sui server SiteGround

Come cliente SiteGround, puoi facilmente testare PHP 8.4 (Beta 3) sul tuo sito web. Accedi semplicemente alla sezione Site Tools > Sviluppatori > Gestione PHP e sarai in grado di sostituire la versione PHP corrente utilizzata dal tuo sito con PHP 8.4 (Beta 3) con un solo click.

Tieni presente che PHP 8.4 (Beta 3) è disponibile principalmente per scopi di test e, come al solito, ti consigliamo vivamente di non utilizzarlo sul tuo sito di produzione prima della data di rilascio ufficiale (21 novembre 2024).

Se hai bisogno di testare PHP 8.4 (Beta 3) con il tuo sito esistente, ti consigliamo di creare un nuovo sito per il test e clonare il tuo sito di produzione in esso per testare cose diverse. A questo scopo, puoi utilizzare il nostro strumento di Staging WordPress. Durante il test, assicurati che nulla fallisca e controlla i tuoi file di registro per vedere se vengono visualizzati avvisi o errori. Una volta terminati i test, puoi semplicemente eliminare quel sito.

Conclusioni

In SiteGround lavoriamo costantemente per introdurre la tecnologia PHP più recente prima degli altri. Ecco perché siamo entusiasti di fornire ai nostri clienti l’ultima versione di PHP che porta alcuni grandi miglioramenti che potrebbero migliorare significativamente l’esperienza di sviluppo. Prenditi il ​​tuo tempo per testare la nuova versione prima della data di rilascio ufficiale e resta sintonizzato per ulteriori aggiornamenti dalla community PHP.

Daniel Kanchev

Product Development Director

Daniel è responsabile per portare nuovi prodotti in vita su SiteGround. Questa gestione coinvolge tutti i tipi di attività e comunicazioni tra più team. Entusiasta della tecnologia, dell’esperienza utente, della sicurezza e delle prestazioni, non ti annoierai mai con lui. Daniel è anche un oratore occasionale in conferenze e un appassionato dei viaggi.

Inizia la discussione

Sei pronto a iniziare?