Middle
Kokios naujos galimybės atsirado PHP 7.4 versijoje?
sobes.tech AI
Atsakymas iš AI
- Klasės tipizuotos savybės.
- Strėlinės funkcijos (trumpa sintaksė anoniminių funkcijų).
- Pasirinktinė null sujungimo operatorius (
??=). - Preloading (išankstinis įkėlimas) našumo gerinimui.
- Išplėtimo operatorius masyvuose (
...). - Silpnos nuorodos (Weak References) atminties valdymui.
- Apribota kovariantiškumas ir kontravariantiškumas tipų.
- CFI (naudotojo ini failai) — palaikymas naudotojo ini failams.
- Kai kurių funkcijų ir galimybių pasenimas (pvz.,
is_countable,FILTER_SANITIZE_MAGIC_QUOTES). - FFI (Užsienio funkcijų sąsaja) patobulinimai.
- Tūkstančių skaitmenų skyriklis skaitmeniniuose literatuose (
1_000_000).
<?php
// Tipizuota savybė
class User
{
public string $name;
public ?int $age; // Gali būti null
}
// Strėlinė funkcija
$func = fn(int $a, int $b) => $a + $b;
echo $func(1, 2); // 3
// Null sujungimo operatorius
$data = [
'key' => null,
];
$value ??= 'default';
echo $value; // default
// Išplėtimo operatorius masyvuose
$arr1 = [1, 2];
$arr2 = [3, 4];
$merged = [...$arr1, ...$arr2]; // [1, 2, 3, 4]
<?php
// Silpna nuoroda
$obj = new stdClass;
$weakref = WeakReference::create($obj);
unset($obj); // Objektas ištrintas
// Patikrinimas
var_dump($weakref->get()); // null