1. Список говнокодов пользователя Homess

    Всего: 4

  2. PHP / Говнокод #14576

    +155

    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
    function compileStr($arrStrings) {
    	if (is_array($arrStrings)) {
    		$part1 = 'a:2:{s:5:"VALUE";a:';
    		$part2 = 's:11:"DESCRIPTION";a:';
    		$part3 = '}';
    
    		$ornums = array();
    
    		foreach ($arrStrings as $str) {
    			$exp = explode(",", str_replace(" ", "", $str));
    			$ornums = array_merge($ornums, $exp);
    		}
    
    		$ecount = count($ornums);
    		$s1 = $ecount.':{';
    		$s2 = $ecount.':{';
    
    		for ($i = 0; $i < $ecount; $i++) {
    			$s1 .= 'i:'.$i.';s:'.strlen($ornums[$i]).':"'.$ornums[$i].'";';
    			$s2 .= 'i:'.$i.';s:0:"";';
    		}
    
    		$s1 .= '}';
    		$s2 .= '}';
    
    		$result = $part1.$s1.$part2.$s2.$part3;
    		return $result;
    	}
    }

    Нашел в дебрях проекта. Писать php-сериализатор на php - это концептуально )))
    если кто не понял функция делает вот это:
    if (is_array($arrStrings)) {
    $ornums = explode(',', implode(',', str_replace(' ', '', $arrStrings)));
    return serialize(array("VALUE" => $ornums, "DESCRIPTION" => array_fill(0, count($ornums), '')));
    }

    Homess, 14 Февраля 2014

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

    +153

    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
    public static function translite($string) {
            $rus=array(
                "A","B","C","D","e","F","G","H","I",
                "J","K","L","M","N","O","P","Q","R",
                "S","T","U","V","W","X","Y","Z",
                "ё","й","ю","ь","ч","щ","ц","у","к",
                "е","н","г","ш","з","х","ъ","ф","ы","в",
                "а","п","р","о","л","д","ж","э","я","с",
                "м","и","т","б","Ё","Й","Ю","Ч","Ь",
                "Щ","Ц","У","К","Е","Н","Г","Ш","З",
                "Х","Ъ","Ф","Ы","В","А","П","Р","О",
                "Л","Д","Ж","Э","Я","С","М","И","Т","Б",
                "-"," ","–","?",'"',",",".","«","»","'","!",
                "/","\\",":",";","<",">","(",")","[","]",
                "{","}","@","#","№","$","%","^","&","*",
                "~");
            $eng = array(
                "a","b","c","d","e","f","g","h","i",
                "j","k","l","m","n","o","p","q","r",
                "s","t","u","v","w","x","y","z",
                "yo","iy","yu","","ch","sh","c","u","k",
                "e","n","g","sh","z","h","","f","y","v",
                "a","p","r","o","l","d","j","е","ya","s",
                "m","i","t","b","yo","iy","yu","ch","",
                "sh","c","u","k","e","n","g","sh","z",
                "h","","f","y","v","a","p","r","o",
                "l","d","j","e","ya","s","m","i","t","b",
                "_","_","_","","","","","","","","",
                "","","","","","","","","","",
                "","","","","","","","","","",
                "");
            $string = str_replace($rus, $eng,  $string);
            if(!empty($string)) {
                return $string;
            }
            else return("");
        }

    Как соответсвует название функции той неведомой херне, которую она делает я так и не понял.
    Столько травы у меня нет.

    Homess, 26 Декабря 2013

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

    +155

    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
    $sqlQuery = trim(str_replace("\n", ' ', $sqlQuery));
    $sqlQuery = trim(str_replace("\r", ' ', $sqlQuery));
    $sqlQuery = trim(str_replace("\r\n", ' ', $sqlQuery));
    $sqlQuery = trim(str_replace("\t", ' ', $sqlQuery));
    
    $len = strlen($sqlQuery);
    $type = '';
    $i = 0;
    
    while ($i < $len && $sqlQuery{$i} != ' ') {
    	$type .= $sqlQuery{$i};
    	$i++;
    }
    
    $type = strtoupper($type);

    Получение типа запроса (SELECT, UPDATE и т.д. из строки запроса)

    Homess, 02 Декабря 2013

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

    +166

    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 CompareDates($date1, $date2)
    {
    	$s_date1 = $this->CharToDateFunction($date1);
    	$s_date2 = $this->CharToDateFunction($date2);
    	$strSql = "
    		SELECT
    			if($s_date1 > $s_date2, 1,
    				if ($s_date1 < $s_date2, -1,
    					if ($s_date1 = $s_date2, 0, 'x')
    			)) as RES
    		";
    	$z = $this->Query($strSql, false, "FILE: ".__FILE__."<br> LINE: ".__LINE__);
    	$zr = $z->Fetch();
    	return $zr["RES"];
    }

    Bitrix. Функция прекрасно живет как минимум с 10 версии по сей день.

    Homess, 26 Ноября 2013

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