- 1
- 2
- 3
- 4
- 5
$cur = date('Y-m-d',time());
$date_arr = explode('-',$cur);
$year =$date_arr[0];
$month =$date_arr[1];
$day =$date_arr[2];
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+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) :-)
+169
function cp1251_to_utf8 ($txt) {
$in_arr = array (
chr(208), chr(192), chr(193), chr(194),
chr(195), chr(196), chr(197), chr(168),
chr(198), chr(199), chr(200), chr(201),
chr(202), chr(203), chr(204), chr(205),
chr(206), chr(207), chr(209), chr(210),
chr(211), chr(212), chr(213), chr(214),
chr(215), chr(216), chr(217), chr(218),
chr(219), chr(220), chr(221), chr(222),
chr(223), chr(224), chr(225), chr(226),
chr(227), chr(228), chr(229), chr(184),
chr(230), chr(231), chr(232), chr(233),
chr(234), chr(235), chr(236), chr(237),
chr(238), chr(239), chr(240), chr(241),
chr(242), chr(243), chr(244), chr(245),
chr(246), chr(247), chr(248), chr(249),
chr(250), chr(251), chr(252), chr(253),
chr(254), chr(255)
);
$out_arr = array (
chr(208).chr(160), chr(208).chr(144), chr(208).chr(145),
chr(208).chr(146), chr(208).chr(147), chr(208).chr(148),
chr(208).chr(149), chr(208).chr(129), chr(208).chr(150),
chr(208).chr(151), chr(208).chr(152), chr(208).chr(153),
chr(208).chr(154), chr(208).chr(155), chr(208).chr(156),
chr(208).chr(157), chr(208).chr(158), chr(208).chr(159),
chr(208).chr(161), chr(208).chr(162), chr(208).chr(163),
chr(208).chr(164), chr(208).chr(165), chr(208).chr(166),
chr(208).chr(167), chr(208).chr(168), chr(208).chr(169),
chr(208).chr(170), chr(208).chr(171), chr(208).chr(172),
chr(208).chr(173), chr(208).chr(174), chr(208).chr(175),
chr(208).chr(176), chr(208).chr(177), chr(208).chr(178),
chr(208).chr(179), chr(208).chr(180), chr(208).chr(181),
chr(209).chr(145), chr(208).chr(182), chr(208).chr(183),
chr(208).chr(184), chr(208).chr(185), chr(208).chr(186),
chr(208).chr(187), chr(208).chr(188), chr(208).chr(189),
chr(208).chr(190), chr(208).chr(191), chr(209).chr(128),
chr(209).chr(129), chr(209).chr(130), chr(209).chr(131),
chr(209).chr(132), chr(209).chr(133), chr(209).chr(134),
chr(209).chr(135), chr(209).chr(136), chr(209).chr(137),
chr(209).chr(138), chr(209).chr(139), chr(209).chr(140),
chr(209).chr(141), chr(209).chr(142), chr(209).chr(143)
);
$txt = str_replace($in_arr,$out_arr,$txt);
return $txt;
}
Перекодировка cp1251 в UTF8
http://mihalytch.org.ua/programming/php/convert-cp1251-utf8.html
Случайно сотрудник использовал