Читая ответы, хочется плакать.
В кои-то веки нашелся автор, который осилил корректно сформулировать свою проблему: в дополнение к стандартной проверке РНР, ему надо отбрасывать и нули тоже. Казалось бы - прочти и сделай по заказанному.
Но нет. Один герой все бубнит про "это исходит от Вашей задачи" (при том что задача описана!) и дальше пишет бессмысленный код. Второй, по своей стародавней привычке, просто с умным видом пишет бессмыслицу. С третьего взятки гладки - типичное похапешное создание, пишет код не приходя в сознание.
И при этом никто (включая автора) почему-то не догадался тупо перечислить условия задачи:
!($var || $var === 0 || $var === 0.0 ||$var === '0')) ...
Не говоря уже о том, что подумав, можно сообразить, что автора интересует
длина строки. И написать код, который корректно, но не столь императивно следует всем условиям задачи:
function is_empty(&$var)
{
return !($var || (is_scalar($var) && strlen($var)));
}
Самое печальное, что писать это всё - пустая трата времени.
Серая похапешнаая масса так и останется серой массой, не понимающей языка, на котором она пишет, но всегда готовой дать совет ближнему.