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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    ...
    $personInfos = $query->getResult();
    foreach ($personInfos as $personInfo) {
        return $personInfo;
    }
    /* we lost our person */
    return false;

    Ребята-оутсорсеры насмешили наш отдел))

    zinovyev, 06 Февраля 2015

    Комментарии (1)
  2. PHP / Говнокод #17583

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    $var = null;
    
    // Не вызовет: "Notice: Undefined Index 0"
    var_dump($var[0][1][2][3]['route']); // NULL

    PHP не показывает Notic'ы если переменная или значение является NULL'ом при попытки получить доступ к элементам массива (заметил это когда функция могла возвратить null или массив). Нашел это интересным.

    volter9, 05 Февраля 2015

    Комментарии (13)
  3. PHP / Говнокод #17577

    +154

    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
    16. 16
    public static function ShowClaimsByManager($manager_id,$status,$offset_limit,$rows_limit){
            $DBH = Registry::get('DBH');
            $STH = $DBH ->prepare(
                "SELECT * FROM claims,claims_status
                 WHERE claims.manager_id = :manager_id
                 AND claims.id = claims_status.claim_id
                 AND claims_status.status = :statusc
                 LIMIT :offsetl, :rowsl" );
            $STH->bindParam(':manager_id', $manager_id, PDO::PARAM_STR);
            $STH->bindParam(':statusc', $status, PDO::PARAM_STR);
            $STH->bindParam(':offsetl', $offset_limit, PDO::PARAM_INT);
            $STH->bindParam(':rowsl', $rows_limit, PDO::PARAM_INT);
            $STH->execute();
            $result = $STH->fetchAll(PDO::FETCH_ASSOC);
            return $result;
        }

    Парень явно любит ctrl+c и ctrl+v
    про $STH->execute($data); не не слышал.

    werdan, 04 Февраля 2015

    Комментарии (5)
  4. PHP / Говнокод #17572

    +160

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    <?php // if you delete this the sky will fall on your head
    endwhile; //endwhile have_posts()
    else: //have_posts()
    ?>
    <p>Sorry, no posts matched your criteria.</p>
    <?php endif; ?>
    <!-- // this is just the end of the motor - don't touch that line either :) -->

    ...мм, Ок!

    elvis, 04 Февраля 2015

    Комментарии (1)
  5. PHP / Говнокод #17570

    +137

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    try {
    	/* ... */
    } catch (\Exception $e) {
    	@trigger_error($e->getMessage(), E_USER_WARNING);
    }

    ini_set('tsundere_mode', '1');

    Stallman, 04 Февраля 2015

    Комментарии (5)
  6. PHP / Говнокод #17564

    +133

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    /**
         * Verify displayed special product price on product page(front-end) equals passed from fixture.
         *
         * @return null|string|void
         */
        protected function verifySpecialPrice()
        {
            return null;
        }

    Судя с того, что написано в дескрипшене, а именно
    @return void
    даный метод можно свести к
    return;
    или даже
    //

    Lord723518, 03 Февраля 2015

    Комментарии (3)
  7. PHP / Говнокод #17540

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    /* Проект на Kohana Framework
    Таблица "курсы" (которую товарищ умудрился ещё обозвать tracks) имеет связь "многие ко многим" с таблицей "разделы курсов". 
    Для этого в ней есть поле section_id вот такого содержания:
    2|3|4|6|9
    А вот так запрашиваются курсы из определённой категории:
    */
    $tracks = ORM::factory('Tracks')->order_by($order_by,'ASC')->where('section_id','LIKE','%'.$this->track_id.'%')->find_all()->as_array();
    // Ну то есть, если категорий будет больше 10, то появятся неожиданные результаты....

    Всегда весело смотреть, как люди, не знающие как делать связь "многие-ко-многим" изобретаю велосипеды....

    mkramer, 28 Января 2015

    Комментарии (9)
  8. PHP / Говнокод #17536

    +160

    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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    'idate' => 
            array (
              'UNIX' => '1346688000',
              'datetime' => '03.09.2012 19:00',
              'time' => '19:00',
              'hour' => '19',
              'second' => '00',
              'date' => '03.09.2012',
              'datename' => '03 September 2012',
              'year' => '2012',
              'y' => '12',
              'd' => '03',
              'd0' => '3',
              'm' => '09',
              'm0' => '9',
              'month' => 'September',
              'day' => 'Monday',
              'monthr' => 'сентября',
              'datenamer' => '03 сентября 2012',
              'ago' => '2 года назад',
            ),

    Правильное хранение даты. Работаю недавно и сам рак еще тот - но это слишком. Переношу БД из в свой проект и встречаю это...

    VladDelec, 28 Января 2015

    Комментарии (14)
  9. PHP / Говнокод #17522

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    for($i = 0; $i < $count; ++$i){
      $result_formatted[$i][] = $result[$counter];
      ++$counter;
      $result_formatted[$i][] = $result[$counter];
      ++$counter;
    }

    Magic operations

    alexhifer, 26 Января 2015

    Комментарии (3)
  10. PHP / Говнокод #17513

    +161

    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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    <?php
    /**
     * Округляет число до заданного количества знаков после запятой.
     * @param float $v	- округляемое число.
     * @param int $prec - количество знаков после запятой (по-умолчанию: 0).
     * @param str $mode - режим округления: ceil | floor | round (по-умолчанию: round).
     * @return float округлённое число.
     */
    function round2($v, $prec = 0, $mode = "round") {
    	for ($k = 1, $i = 0; $i < $prec; $i++, $k *= 10)
    		;
    	switch ($mode) {
    		case "ceil" : $v = ceil($k * $v) / $k;
    			break;
    		case "floor" : $v = floor($k * $v) / $k;
    			break;
    		default : $v = round($k * $v) / $k;
    	}
    
    	return $v;
    }

    kissarat, 24 Января 2015

    Комментарии (7)