"PHP" / Говнокод #5310 Ссылка на оригинал

0

  1. 1
$ext = substr($fileName, strrpos($fileName, '.') + 1);

Про pathinfo никто и не слышал видимо. Код написан недавно кем-то из команды)

Запостил: anycolor anycolor, (Updated )

Комментарии (16) RSS

    • говнокод в том, что данный код не всегда вернет то, что хотелось бы. Если имя файла без расширения, то код вернет имя файла начиная со второго символа.
      Ответить
      • А pathinfo($fileName, PATHINFO_EXTENSION) вообще "ничего" (в кавычках, прошу заметить!) не вернет, если расширения нет. В любом случае нужна проверка:
        1) Либо strrpos($fileName, '.') !== false;
        2) Либо pathinfo($fileName, PATHINFO_EXTENSION) != false
        В чем же тогда разница, если тут одна строчка кода всего?!
        Ответить
        • тут суть не в том, кто и что вернет, а в том, что для данной операции есть встроенная функция языка.

          Еще бы через explode делали определение расширения или по отрезанию послених двух-трех символов)
          Ответить
          • Суть в том, что этот код не является говном. Если я у картинки переименую расширение c .png на .txt файл тоже свой MIME type не потеряет, зато есть встроенная функция языка... bla bla bla
            Ответить
        • вернуть ничего -- это правильное поведение
          потому что расширения нет

          вернуть имя после второго символа (текущую дату, подключение к базе данных, телефон анджелы джоли) -- неправильное поведение для функции получения расширения.

          есть такое правило: поведение функции должно быть логичным.

          даже в пхп.
          Ответить
  • См. 7-й коммент. Такое чувство, что я со стенкой в теннис играю... Вы походу оба на своей "волне"...
    Ответить

Добавить комментарий

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8