Sobes.tech
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_QUOTES e 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