- 1
class AutocompleteAddressZaplatka2 extends AutocompleteAddressZaplatka
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+192
class AutocompleteAddressZaplatka2 extends AutocompleteAddressZaplatka
Фундаментальные объектно-ориентированные костыли ...
+164
$cur = date('Y-m-d',time());
$date_arr = explode('-',$cur);
$year =$date_arr[0];
$month =$date_arr[1];
$day =$date_arr[2];
+162
function show_price_list() {
$period_1 = $period_2 = $period_3 = $period_4 = $period_5 = $period_6 = "";
$query = "
SELECT id, price, type
FROM price
ORDER BY type, start
";
$this->registry['sql']->query($query);
if ($this->registry['sql']->getNumberRows()>0) {
foreach ($this->registry['sql']->getFetchObject() as $oRow) {
switch($oRow->type) {
case 0: $period_1 .= '<td><input type="text" name="period['.$oRow->id.']" value="'.$oRow->price.'"></td>';
break;
case 1: $period_2 .= '<td><input type="text" name="period['.$oRow->id.']" value="'.$oRow->price.'"></td>';
break;
case 2: $period_3 .= '<td><input type="text" name="period['.$oRow->id.']" value="'.$oRow->price.'"></td>';
break;
case 3: $period_4 .= '<td><input type="text" name="period['.$oRow->id.']" value="'.$oRow->price.'"></td>';
break;
case 4: $period_5 .= '<td><input type="text" name="period['.$oRow->id.']" value="'.$oRow->price.'"></td>';
break;
case 5: $period_6 .= '<td><input type="text" name="period['.$oRow->id.']" value="'.$oRow->price.'"></td>';
break;
}
}
}
@$this->registry['template']->set('period_1', $period_1);
@$this->registry['template']->set('period_2', $period_2);
@$this->registry['template']->set('period_3', $period_3);
@$this->registry['template']->set('period_4', $period_4);
@$this->registry['template']->set('period_5', $period_5);
@$this->registry['template']->set('period_6', $period_6);
}
Классика жанра
+160
class CIBlockFindTools
...
function GetSectionID($section_id, $section_code, $arFilter)
{
$section_id = intval($section_id);
if($section_id > 0)
{
return $section_id;
} else if(){
}
return 0;
...
}
битрикс суров, использует свою реализацию intval(). как мы могли без этого жить?
+163
$lu=0;
$ray_array = file("allray.txt");
while (empty($rayon)) //пока район не заполнен значением
{
preg_match("#".trim($ray_array[$lu++])."#", $text, $rayon);
}
Многострочный поиск
+158
if ($result === false) {
$result = $translated;
}
if ($result === false){
$result = $translated;
}
Magento. Так работают переводы.
+168
if ($sum == 30) {
return 24;
} else {
return $sum * 0.8;
}
+160
function bigplus(){
$args = func_get_args();
$maxlength = 0;
$mlkey = 0;
$inmind = 0;
foreach($args as $key=>$arg){
$args[$key] = array_reverse(str_split($arg));
$length = count($args[$key]);
if($maxlength<$length){
$maxlength = $length;
$mlkey = $key;
}
}
for($pos=0; $pos<$maxlength; $pos++){
$c = 0;
for($i=0; $i<count($args); $i++){
if(!isset($args[$i][$pos])){
$args[$i][$pos]=0;
}
$c+=$args[$i][$pos];
}
$args[0][$pos] = $c+$inmind;
$inmind = floor(($args[0][$pos])/10);
$args[0][$pos] %= 10;
}
if($inmind>0){
$args[0][] = $inmind;
}
return implode(array_reverse($args[0]));
}
Народ, знаю что говнокод, помогите советом как исправить?
Функция выводит результат сложения любого числа положительных чисел произвольной длины.
Не придумал ничего умнее, чем реализовать сложение "в столбик".
+161
// Подходы различной национальности
/* Первый */
function filesize_format($bytes, $format = '', $force = ''){
$force = strtoupper($force);
$defaultFormat = '%01d %s';
if (strlen($format) == 0)
$format = $defaultFormat;
$bytes = max(0, (int) $bytes);
$units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB');
$power = array_search($force, $units);
if ($power === false)
$power = $bytes > 0 ? floor(log($bytes, 1024)) : 0;
return sprintf($format, $bytes / pow(1024, $power), $units[$power]);
}
/* Второй */
function files_size( $size )
{
$name = array('Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB');
$mysize = $size ? round( $size / pow(1024, ( $i = floor( log( $size, 1024 ) ) ) ), 2) .' ' .$name[$i] : $size.' Bytes';
return $mysize;
}
/* Третий */
function humanSize($size) {
$a = array("bytes", "kb", "Mb", "Gb", "Tb", "Pb");
$pos = 0;
while ($size >= 1024) {
$size /= 1024;
$pos++;
}
return round($size,2)." ".$a[$pos];
}
Вопрос: Определите географические координаты места написания каждого...
+163
if(empty($value)) {
$empty_colls++;
$value = $value = str_replace(" ", "", $value);
} else {
$haystack=mb_convert_encoding($format_value, 'UTF-8', mb_detect_encoding($format_value));
$needle=mb_convert_encoding('грн', "windows-1251", "UTF-8");
if (strpos($haystack, $needle)) $currency='грн';
else {
$needle=mb_convert_encoding('€', "windows-1251", "UTF-8");
if (strpos($haystack, $needle)) $currency= '€';
else {
$needle=mb_convert_encoding('$USD', "windows-1251", "UTF-8");
if (strpos($haystack, $needle)) $currency='USD';
}
}
$value = mb_convert_encoding($value,"UTF-8", mb_detect_encoding($value));
...
}
Даже не знаю с чего больше смеяться/плакать (исходники в UTF-8) :-)