Задать вопрос
  • Правильная проверка на пустоту переменной?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Читая ответы, хочется плакать.

    В кои-то веки нашелся автор, который осилил корректно сформулировать свою проблему: в дополнение к стандартной проверке РНР, ему надо отбрасывать и нули тоже. Казалось бы - прочти и сделай по заказанному.

    Но нет. Один герой все бубнит про "это исходит от Вашей задачи" (при том что задача описана!) и дальше пишет бессмысленный код. Второй, по своей стародавней привычке, просто с умным видом пишет бессмыслицу. С третьего взятки гладки - типичное похапешное создание, пишет код не приходя в сознание.

    И при этом никто (включая автора) почему-то не догадался тупо перечислить условия задачи:
    !($var || $var === 0 || $var === 0.0 ||$var === '0')) ...

    Не говоря уже о том, что подумав, можно сообразить, что автора интересует длина строки. И написать код, который корректно, но не столь императивно следует всем условиям задачи:
    function is_empty(&$var)
    {
        return !($var || (is_scalar($var) && strlen($var)));
    }

    Самое печальное, что писать это всё - пустая трата времени.
    Серая похапешнаая масса так и останется серой массой, не понимающей языка, на котором она пишет, но всегда готовой дать совет ближнему.
    Ответ написан
    5 комментариев
  • Как хранить и работать с деньгами в коде и базе данных?

    @gleb_kudr
    Вот международный стандарт по денежным единицам en.wikipedia.org/wiki/ISO_4217
    Там видно, что число знаков после запятой у них может быть разное. А значит для простоты разработки, все стоит хранить в минимальной дробной денежной единице валюты, осущеставляя конвертацию при выводе (т.е. в int)
    Ответ написан
    Комментировать