1. PHP / Говнокод #18833

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    function getDays($value) {
        $days = [
            1=>'понедельник',
            2=>'вторник',
            3=>'среда',
            4=>'четверг',
            5=>'пятница',
            6=>'суббота',
            7=>'воскресенье',
        ];
        foreach ($value as $day) {
            $result[] = $days[$day];
        }
        return implode(', ',$result);
    }

    Рабочий проект, парень по номеру дня недели возвращает строку.

    Запостил: werdan, 08 Октября 2015

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

    • Норм, только воскресенье должно быть 0 )))
      Ответить
    • Как еще это можно решить не используя array_intersect()?:)
      Ответить
      • ФункциАнальненько. http://ideone.com/3FA1kr
        Ответить
        • Самое смешное, что функциАнальный подход в PHP является рекомендуемым, ибо заранее заготовленный и оптимизированный цикл внутри функции array_map может оказаться быстрее, чем пэхапэшный цикл общего назначения for/foreach, выполняющий кучу лишних проверок.

          Кстати, что на самом деле съест больше времени: foreach или пачка вызовов call_user_func?
          Ответить
          • Скорее всего пачка вызовов call_user_func, т.к. вызов функций в похапе дороговат.
            Ответить
            • Таки да, http://ideone.com/26cK8W
              Ответить
              • Но можно убрать по сути лишний вызов call_user_func(), но это все равно ничего не меняет http://ideone.com/HrU9Gi
                Ответить
                • Как ничего? Сорок процентов пирфоманса! Байтолюбы за десять процентов пойдут на любое преступление!
                  Ответить
                  • >Байтолюбы
                    >похапе

                    Да ну на хуй.
                    Ответить
                  • Там ещё через array_filter можно, но ну его на хер такие извращения: http://ideone.com/LtjV1g
                    Ответить
            • Верно: http://ideone.com/eC62Ut
              Ответить

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