Назад к вопросам
Middle
95
questionbank
Какие новые возможности появились в версии PHP 7.4?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
- Типизированные свойства классов.
- Стрелочные функции (краткий синтаксис для анонимных функций).
- Необязательный оператор объединения с null (
??=). - Предзагрузка (Preloading) для повышения производительности.
- Оператор расширения в массивах (
...). - Слабые ссылки (Weak References) для управления памятью.
- Ограниченная ковариантность и контравариантность типов.
- CFI (Custom ini-файлы) — поддержка пользовательских ini-файлов.
- Устаревание (Deprecations) некоторых функций и возможностей (например, алиасы
is_countable,FILTER_SANITIZE_MAGIC_QUOTESи др.). - Улучшения в FFI (Foreign Function Interface).
- Разделение тысяч в числовых литералах (
1_000_000).
<?php
// Типизированное свойство
class User
{
public string $name;
public ?int $age; // Может быть null
}
// Стрелочная функция
$func = fn(int $a, int $b) => $a + $b;
echo $func(1, 2); // 3
// Оператор объединения с null
$data = [
'key' => null,
];
$value ??= 'default';
echo $value; // default
// Оператор расширения в массивах
$arr1 = [1, 2];
$arr2 = [3, 4];
$merged = [...$arr1, ...$arr2]; // [1, 2, 3, 4]
<?php
// WeakReference
$obj = new stdClass;
$weakref = WeakReference::create($obj);
unset($obj); // Объект удален
// Проверка
var_dump($weakref->get()); // null