Middle
Quali nuove funzionalità sono state introdotte nella versione PHP 7.4?
sobes.tech AI
Risposta dell'AI
- Proprietà tipizzate delle classi.
- Funzioni freccia ( sintassi breve per funzioni anonime).
- Operatore di unione con null opzionale (
??=). - Preloading (Preloading) per migliorare le prestazioni.
- Operatore di espansione negli array (
...). - Riferimenti deboli (Weak References) per la gestione della memoria.
- Limitata covarianza e contravarianza dei tipi.
- CFI (file ini personalizzati) — supporto per file ini personalizzati.
- Deprecazioni di alcune funzioni e funzionalità (ad esempio, alias
is_countable,FILTER_SANITIZE_MAGIC_QUOTESe altri). - Miglioramenti in FFI (Interfaccia di Funzioni Esterne).
- Separazione delle migliaia nei literali numerici (
1_000_000).
<?php
// Proprietà tipizzata
class User
{
public string $name;
public ?int $age; // Può essere null
}
// Funzione freccia
$func = fn(int $a, int $b) => $a + $b;
echo $func(1, 2); // 3
// Operatore di unione con null
$data = [
'key' => null,
];
$value ??= 'default';
echo $value; // default
// Operatore di espansione negli array
$arr1 = [1, 2];
$arr2 = [3, 4];
$merged = [...$arr1, ...$arr2]; // [1, 2, 3, 4]
<?php
// WeakReference
$obj = new stdClass;
$weakref = WeakReference::create($obj);
unset($obj); // Oggetto eliminato
// Verifica
var_dump($weakref->get()); // null