Что такое Null-coalescing и Null-safe операторы?

Ответ
// ?? (Null coalescing) - значение по умолчанию если null
$name = $user->name ?? 'Anonymous';
$config = $data['key'] ?? $fallback ?? 'default';

// ??= (Null coalescing assignment, PHP 7.4)
$options['timeout'] ??= 30; // установить если null

// ?-> (Nullsafe operator, PHP 8.0) - цепочка вызовов с проверкой null
$city = $user?->getAddress()?->getCity()?->getName();
// Вместо:
// $city = $user !== null && $user->getAddress() !== null && ...

// ?-> возвращает null при первом null в цепочке
// Нельзя использовать для записи: $user?->name = 'x'; // Error
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.