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

    +66.8

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    switch ($iType) {
    
        case 0:
            $iType = 0;
            /* code */
            break;
    
        case 1:
            $iType = 1;
            /* code */
            break;
    }

    Так как весь switch тянется на 1000 строк то приважу краткий вид.

    guest, 04 Июня 2009

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

    +153

    1. 1
    $this->template_vars['product_description'] = nl2br(str_replace('{price}', (($this->template_vars['product_old_price']) ? '<span class="old_price">$'.$this->template_vars['product_old_price'].'</span> ' : '').'$'.$this->template_vars['product_price'], $this->template_vars['product_description'])) . $fabric;

    Это не столько говнокод, сколько пример непреднамеренной обфускации.

    guest, 04 Июня 2009

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

    +143.3

    1. 1
    2. 2
    3. 3
    4. 4
    if (PEAR::isError($iNameID))                   if (PEAR::isError($iNameID))
    {                                              {
    	trigger_error($iNameID->getMessage());         trigger_error($iNameID->getMessage());  
    }                                              }

    guest, 04 Июня 2009

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

    +141.5

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    /*
        Паттерн для вывода данных в таблицу :)
    */
    echo "<table>\n";
    while ($line = mysql_fetch_row($result)) {
    echo "\t<tr>\n";
    do {  
        echo "\t\t<td>each( $val)</td>\n";
    } while(end($val) != current($val));
        echo "\t</tr>\n";
    }
    echo "</table>\n";

    guest, 03 Июня 2009

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

    +132.3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if(!isset($_GET['p'])) $_GET['p'] = '';
    else{
    	if (strrchr($_GET['p'],"/") <> "/") {
    	}else{   $_GET['p'] =substr($_GET['p'],0, strlen($_GET['p'])-1);	}
    }

    guest, 03 Июня 2009

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

    +146

    1. 1
    ++$i--;

    операция "передёргивания"

    guest, 03 Июня 2009

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

    +61.1

    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
    function extCreateObject( $name, $p ) {
    		$p = array_values( $p );
    		switch ( count( $p ) ) {
    			case 0:
    				return new $name;
    			case 1:
    				return new $name( $p[0] );
    			case 2:
    				return new $name( $p[0], $p[1] );
    			case 3:
    				return new $name( $p[0], $p[1], $p[2] );
    			case 4:
    				return new $name( $p[0], $p[1], $p[2], $p[3] );
    			case 5:
    				return new $name( $p[0], $p[1], $p[2], $p[3], $p[4] );
    			case 6:
    				return new $name( $p[0], $p[1], $p[2], $p[3], $p[4], $p[5] );
    			default:
    				wfDebugDieBacktrace( "Too many arguments to constructor in extCreateObject" );
    		}
    	}

    mediawiki.org )

    guest, 03 Июня 2009

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

    +68.5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $numbers= Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0");
    if ($number){
    for ($i=0;$i<strlen($number);$i++){
        if (!in_array($number[$i], $numbers)){
            return false;
        }
    }

    проверка на число

    guest, 03 Июня 2009

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

    +134.1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public function delete($table_name, $where='1', $file=__FILE__, $line=__LINE__) {
    	mysqli_query($this->connect, "LOCK TABLES $table_name WRITE");
    	$query = "DELETE FROM $table_name WHERE $where";
            $tstart = normal_microtime();
    	$result = mysqli_query($this->connect, $query);
            $this->queries[]=array('query'=>$query.";", 'time'=>sprintf("%f", normal_microtime() - $tstart));
    	if($result===false) $this->show_error(mysqli_error($this->connect)."in query</b><br><pre>".format_sql($query)."</pre><br><b>in file </b>$file <b>in line</b> $line");
    	mysqli_query($this->connect, 'UNLOCK TABLES');
    }

    Вот такая вот функция
    Особо радует очень нужный LOCK и вывод сообщений об ошибках с подстановкой __LINE и __FILE__

    guest, 02 Июня 2009

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

    +52.7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function connect() {
            if (!isset($db)) {
                    $db = new db('localhost', 'root', '', 'news');
            }
    return $db;
    }

    А по задумке должен был быть синглетон...

    guest, 02 Июня 2009

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