Базовый курс PHP — Переменные с типом null

  • Начинающий
  • 20 мин
  • 7 примеров
  • 4 задания
  • 21.10.2026
  • 0

Что такое null?

null — это специальный тип данных в PHP, который означает отсутствие значения. Переменная имеет значение null в трёх случаях:

  • Ей явно присвоено значение null
  • Ей ещё не было присвоено никакое значение
  • Она была удалена с помощью unset()

Значение null записывается без кавычек и не чувствительно к регистру, но принято писать строчными буквами: null.

Пример кода PHP #1
<?php

// Явно присваиваем null
$value = null;

var_dump($value); // NULL
echo gettype($value); // NULL
Результат
NULL
NULL

Как проверить переменную на null?

Для проверки переменной на null используется функция is_null(). Она возвращает true, если значение равно null, и false в противном случае.

Пример кода PHP #2
<?php

$empty = null;
$name = 'Алексей';

var_dump(is_null($empty)); // bool(true)
var_dump(is_null($name));  // bool(false)
Результат
bool(true)
bool(false)

Также можно использовать оператор строгого сравнения === для проверки на null.

Пример кода PHP #3
<?php

$value = null;
$number = 42;

var_dump($value === null);  // bool(true)
var_dump($number === null); // bool(false)
Результат
bool(true)
bool(false)

Как null ведёт себя при преобразовании типов?

При преобразовании null в другие типы данных он превращается в «пустое» значение:
В строку — пустая строка ''
В число — 0
В bool — false

Пример кода PHP #4
<?php

$value = null;

// Преобразование null в строку
$str = (string) $value;
var_dump($str);  // string(0) ""

// Преобразование null в число
$num = (int) $value;
var_dump($num);  // int(0)

// Преобразование null в bool
$bool = (bool) $value;
var_dump($bool); // bool(false)
Результат
string(0) ""
int(0)
bool(false)

Как удалить значение переменной?

Конструкция unset() удаляет переменную. После удаления переменная перестаёт существовать.

Проверить, существует ли переменная, можно функцией isset(): она возвращает true, если переменная существует и не равна null, и false в остальных случаях.

Пример кода PHP #5
<?php

$name = 'Мария';

echo $name . PHP_EOL; // Мария

// Удаляем переменную
unset($name);

// Теперь переменная $name не существует
var_dump(isset($name)); // bool(false)
Результат
Мария
bool(false)

Как gettype() работает с null?

Функция gettype() для значения null возвращает строку NULL.

Пример кода PHP #6
<?php

$empty = null;
$text = 'Привет';
$number = 10;

echo gettype($empty) . PHP_EOL;  // NULL
echo gettype($text) . PHP_EOL;   // string
echo gettype($number);            // integer
Результат
NULL
string
integer

Оператор ?? (null coalescing)

Оператор ?? (объединение с null) позволяет задать значение по умолчанию, если переменная равна null или не существует.

Пример кода PHP #7
<?php

$name = null;
$city = 'Москва';

// Если $name равен null, используем 'Гость'
$displayName = $name ?? 'Гость';

// Если $city равен null, используем 'Неизвестно'
$displayCity = $city ?? 'Неизвестно';

echo $displayName . PHP_EOL; // Гость
echo $displayCity;            // Москва
Результат
Гость
Москва