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

    +170

    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
    /**
    * custom_field_sort_func is the function that compares 2 arrays and determines the order, used by custom_field_sort
    */
    	function custom_field_sort_func($a, $b=NULL) {
    		static $keys;
    		if($b===NULL)
    			return $keys = $a;
    		foreach($keys as $k)
    		{
    			return strcmp(@$a['custom_field'][$k], @$b['custom_field'][$k]);
    		}
    		return 0;
    	}

    Из проекта написанного на движке cakephp.
    Соответствует так же содержимому самого фреймворка.

    Запостил: zabuhailo, 14 Декабря 2010

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

    • ???
      Ответить
    • Ретурн в цикле - это что-то новенькое!
      Ответить
    • Круто :))
      Ответить
    • шедевр в каждой строчке
      Ответить
    • векторные ретурны для гипертекстового препроцессора!
      Ответить
      • а где тут векторы?
        Ответить
        • Ничего вы не понимаете. Есть OCCAM (не путать с OCaML и с одноимённой бритвой), есть Parlog, есть язык программирования Ада, а здесь параллельный PHP для векторных процессоров. Каждый return в цикле создаёт новую задачу (как fork) и получается дерево процессов. У нас на глазах рождается дракон или многоголовая гидра.

          Автор ГК придумал такую инновацию, а Вы так прозаически... Нет пророка в своём отечестве, не признают современники гениев!
          Ответить
          • >>Автор ГК придумал такую инновацию
            наверное это нанопхп из сколкова
            Ответить
            • Сегодня векторный PHP, а завтра... Даже страшно представить, что завтра придумают! А все так скептически к Сколкову относятся...
              Ответить
              • А завтра суперструнный.
                Ответить
              • ну какже какже.. ламповый векторный web гипертекстовый фидонет имени Мицгола.
                пrавославно, воистену
                Ответить
          • ага, ухватил мысль
            Ответить
    • >foreach () return 1;

      Феноменально! Хочу пожать руку автору.
      Ответить
    • Я немного поправил стиль кода, не трогая логику, это что бы было проще сразу ухватить гениальность автора.

      В комменте утверждается, что функция сравнивает 2 массива, и при том второй аргумент по умолчанию NULL.

      Безусловный return из foreach - выше всяческих похвал. )))

      При первом обращении (и возможно дальше тоже, смотря какие будут вызовы) и $b НЕ равным NULL, статическая переменная $keys будет иметь значение NULL (её ведь не инициализировали при объявлении). Далее последует foreach($keys as $k), что нужно читать как foreach(NULL as $k) - круто!

      Помимо прочего порадовали '@' в аргументах strcmp(). В конечном итоге получается, что вообще всё равно что с чем сравнивается, лишь бы просто выполнить код и хэ с ним.
      Ответить
    • Движок какаПХП.
      Ответить
    • Абсолютно согласен. Движок fakePHP, да и то, в качестве лести... )
      Ответить

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