@banny_name

Почему для проверки на пустую строковую переменную не используют empty()?

разбирал исходники фреймворков. да и много где видел что используют конструкции:
if($string == '')
Почему не используют empty($string) ?

сказали читать документацию, но там все хорошо, '' - считается пустой переменной....

Дак почему же?
  • Вопрос задан
  • 381 просмотр
Решения вопроса 1
In4in
@In4in
°•× JavaScript Developer ^_^ ו°
Гляньте результат выполнения empty("0"); и все поймете.

Возвращает FALSE, если переменная существует, и содержит непустое и ненулевое значение. В противном случае возвращает TRUE.


UPD
А еще один неплохой способ проверки строки на пустоту - strlen(string),то есть, получение кол-ва символов в ней.


UPD2:

Вариант от Дмитрий - проверка сроки на наличие первого символа (Обыгрывает первый по скорости): isset($string[0]).
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Ivanq
@Ivanq
Знаю php, js, html, css
В данном случае $string == '' и empty($string) одинаков, но empty проверяет на пустоту не только строки. По хорошему, надо использовать $string === '' с тройным равно
Ответ написан
Комментировать
zualex
@zualex
Senior Software Engineer
Всему свое место, вот для ознакомления Таблица сравнения типов
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы