Задать вопрос
Twitt
@Twitt

Пустая строка и null — отличия?

Есть ли разница между записями:
$a = null;
$a = '';
В обеих случаях у $a нет значения. Но когда я инициализировал переменные как null, меня спросили почему нулл а не пустая строка?
Собственно я думал это одно и то же, разве нет ?
  • Вопрос задан
  • 8000 просмотров
Подписаться 2 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
Собственно я думал это одно и то же, разве нет ?

нет.
В обеих случаях у $a нет значения.

в обоих случаях у а есть вполне конкретные значения и тип.
null
string

а кажется вам что это одно и тоже, потому что при не строгом сравнении == они будут равны, и empty($a) вернет true в обоих случаях
types.comparisons
Ответ написан
Комментировать
А вы прогоните через gettype() ваши переменные. NULL - это тип данных, который используется для обозначения пустой переменной. а $a='' - это тип данных строка, пустая, но строка, а не пустота. Кроме строк вы в переменные можете записать массивы, объекты, числа и т.д., поэтому добавили именно отдельный тип для абстрагирования от других существующих типов.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽