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

    +167

    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
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    if ($now_month == 1) {
    	array_push($months, 11);
    	array_push($months, 12);
    	array_push($months, 1);
    	array_push($years, ($now_year - 1));
    	array_push($years, ($now_year - 1));
    	array_push($years, $now_year);
    }
    if ($now_month == 2) {
    	array_push($months, 12);
    	array_push($months, 1);
    	array_push($months, 2);
    	array_push($years, ($now_year - 1));
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 3) {
    	array_push($months, 1);
    	array_push($months, 2);
    	array_push($months, 3);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 4) {
    	array_push($months, 2);
    	array_push($months, 3);
    	array_push($months, 4);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 5) {
    	array_push($months, 3);
    	array_push($months, 4);
    	array_push($months, 5);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 6) {
    	array_push($months, 4);
    	array_push($months, 5);
    	array_push($months, 6);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 7) {
    	array_push($months, 5);
    	array_push($months, 6);
    	array_push($months, 7);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 8) {
    	array_push($months, 6);
    	array_push($months, 7);
    	array_push($months, 8);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 9) {
    	array_push($months, 7);
    	array_push($months, 8);
    	array_push($months, 9);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 10) {
    	array_push($months, 8);
    	array_push($months, 9);
    	array_push($months, 10);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 11) {
    	array_push($months, 9);
    	array_push($months, 10);
    	array_push($months, 11);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 12) {
    	array_push($months, 10);
    	array_push($months, 11);
    	array_push($months, 12);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }

    Я попросил показывать результаты за последние три месяца. Он так и сделал.

    sbbn, 14 Декабря 2014

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

    +156

    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
    //prepare ids
    $temp_char = "";
    $temp_id = "";
    $ids_array = array();
    
    for ($i = 0; $i < strlen($ids); $i ++) {
    	$temp_char = substr($ids, $i, 1);
    	
    	if ($temp_char != ",") {
    		$temp_id .= $temp_char;
    		
    		if ($i == (strlen($ids) - 1)) {
    			array_push($ids_array, $temp_id);
    			$temp_id = "";
    		}
    	} else {
    		array_push($ids_array, $temp_id);
    		$temp_id = "";
    	}
    }

    Распарсил строку с айдишниками, разделенными запятыми. Минут 15 точно потратил.

    sbbn, 14 Декабря 2014

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

    +164

    1. 1
    $id = int(int(int(int(int(int(int(int(int(int(int(int(int(int(int($_POST["id"])))))))))))))));

    Зачем??

    Reds, 12 Декабря 2014

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

    +158

    1. 1
    $newFilename = strrev(implode('_',explode('_',strrev($basename),-5)));

    убирает префикс даты и типа файла
    пример:
    04_08_2014_5_N_Capture.png
    04_08_2014_5_N_My_Capture.png

    moledet2, 11 Декабря 2014

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

    +156

    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
    22. 22
    23. 23
    foreach($this->_logs as $log)
    {
        if($log[1]!==CLogger::LEVEL_PROFILE)
            continue;
        list($message,$level,$category,$timestamp)=$log;
        if(!strncasecmp($message,'begin:',6))
        {
            $log[0]=substr($message,6);
            $stack[]=$log;
        }
        elseif(!strncasecmp($message,'end:',4))
        {
            $token=substr($message,4);
            if(($last=array_pop($stack))!==null && $last[0]===$token)
            {
                $delta=$log[3]-$last[3];
                $this->_timings[]=array($message,$category,$delta);
            }
            else
                throw new CException(Yii::t('yii','CProfileLogRoute found a mismatching code block "{token}". Make sure the calls to Yii::beginProfile() and Yii::endProfile() be properly nested.',
                    array('{token}'=>$token)));
        }
    }

    Yii 1, реализация профайлинга через лог (ну потому что есть же лог, зачем еще сущности плодить, классы же долго грузятся, а у нас самый лайтвейт фреймворк). Чтобы уж точно наверняка, код дублируется в CProfileLogRoute.

    https://github.com/yiisoft/yii/blob/11c3010a82ce2c25332baacce568ff89e451896a/framework/logging/CLogger.php#L294
    https://github.com/yiisoft/yii/blob/11c3010a82ce2c25332baacce568ff89e451896a/framework/logging/CProfileLogRoute.php#L137

    Fike, 11 Декабря 2014

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

    +161

    1. 1
    if ($cat != '0' && $cat != '1' && $cat != '2') {$cat = '3';}

    Вот такой вот вывод =)

    JAZzmiX, 11 Декабря 2014

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

    +149

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    var_dump(0); // int(0), OK
    var_dump(0x0); // int(0), OK
    var_dump(00); // int(0), OK
    var_dump(0.0); // double(0), OK
    var_dump(0.0e1); // double(0), OK
    var_dump(0e1); // double(0), WTF?

    PHP воспринимает экспоненциальную нотацию как double, будьте начеку

    volter9, 11 Декабря 2014

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

    +156

    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
    <?php	if(!isset($_REQUEST['doGo'])){?>
    			<form action=4.php>
    Введите ФИО <input type=text name="text" value="" size=40><br>
    			<input type=submit name="doGo" value="knopka">
    					<?php } 
    				else {
    					$tas=trim($_REQUEST['text']);
    					$text_arr=str_split($tas);	 
    					$i=0;
    					while($text_arr[$i]!==" ")
    					{
    						echo $text_arr[$i]."";
    						$i++;
    					}
    					for($i=0; $i<count($text_arr); $i++)
    					{
    						if($text_arr[$i]==" ") echo " ".$text_arr[$i+1]."."; continue;
    					}
    				}					
    ?>

    Задача обрезать имя и фамилию

    aut0, 11 Декабря 2014

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

    +157

    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
    //full video url
    define("VideoUrl","https://www.youtube.com/watch?v=XbGs_qK2PQA");
    //extract ID
    $videoID=get_youtube_id(VideoUrl);
    echo $videoID; // will output : XbGs_qK2PQA
    //extract function
    function get_youtube_id($url,$debug='N'){
      $res = parse_url($url);
      if($debug=='Y'){
        print_r($res);
      }
      $query = $res['query'];
      $explode = explode('&',$query);
      $explode2 = explode('=',$explode[0]);
      return $explode2[1];
    }

    http://www.youtubemp3pro.com/api/
    самый оптимальный код на извлечение id видео с тытуба

    samuel1ee, 10 Декабря 2014

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

    +157

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $AgencyID = $arrData['agency_id'];
                    if($AgencyID == $arrData['agency_id']) {
                       
                        get_offerts($xml);
                                                
                    }else {
                        
                        $title = "...
                        $msg = "...
                        ...

    rax, 10 Декабря 2014

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