PHP 5.6: le principali novità

18 aprile 2014

Almeno apparentemente PHP 5.6, ultima major release del noto linguaggio Open Source per lo sviluppo server side, non sembrerebbe presentare novità rilevanti per l’evoluzione del progetto, come per esempio l’abbandono di fatto delle mysql functions avvenuto con la versione 5.5; in realtà si tratta di un aggiornamento che porta con sé un buon numero di features aggiuntive meritevoli di un approfondimento. Nel corso di questa trattazione verranno analizzate le principali novità che caratterizzano tale rilascio.

Stato di avanzamento di PHP 5.6

PHP 5.6 si trova attualmente allo stadio iniziale della fase di betatest, la prima alpha venne rilasciata all’inizio di gennaio e venne seguita da altre due release di cui l’ultima resa disponibile ad inizio marzo. La seconda beta dovrebbe essere rilasciata entro la penultima settimana di aprile. Ad oggi gli ultimi due aggiornamenti dei rami stabili supportati sono PHP 5.4.27 e 5.5.11.

Constant scalar expressions

Il concetto di espressioni scalari (o espressioni di valore) è ricollegato alla possibilità di introdurre cifre ed elaborazioni numeriche, stringhe, costanti o questi stessi elementi combinati tra di loro, all’interno di un contesto nel quale il linguaggio avrebbe precedentemente accettato soltanto valori statici; come per esempio nel caso della dichiarazione di una costante, delle proprietà di una classe o degli argomenti predefiniti per le funzioni che ora potranno essere associati a strutture di tipo logico o ad elementari espressioni aritmetiche.

Un semplice esempio relativo a questa funzionalità potrebbe essere il seguente che riassume praticamente quasi tutti i casi descritti in precedenza:

<?php
const A = 1;
const B = A * 2;

class NuovoRisultato {
	const C = B + 1;
	const CALCOLO = A / self::C;
	const OUTPUT = 'Valore di C pari a '.self::C;

	public function addizione($totale = A + self::C) {
    	return $totale;
	}
}

echo (new NuovoRisultato)->addizione()."\n";
echo NuovoRisultato::OUTPUT;
?>

Utilizzando le versioni precedenti di PHP, e nel caso specifico l’analisi è stata limitata alle release dalla 5.3 alla 5.5, il risultato dell’esecuzione dello script proposto sarebbe stato la notifica di un errore sul modello della seguente:

Parse error: syntax error, unexpected '*', expecting ',' or ';' in /dir/file.php on line 3
mentre in un ambiente basato su PHP 5.6, l’output previsto dovrebbe essere invece quello proposto di seguito:

4 
Valore di C pari a 3

Se vuoi aggiornamenti su PHP 5.6: le principali novità inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su PHP 5.6: le principali novità

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy