- 1
- 2
- 3
- 4
public static bool GetUpperBit(long number)
{
return number < 0;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+120
public static bool GetUpperBit(long number)
{
return number < 0;
}
Да это не ГК, но остроумный способ получить верхний бит числа.
+170
switch ($_POST['rate']) {
case(-3):
$r=-3;
break;
case(-2):
$r=-2;
break;
case(-1):
$r=-1;
break;
case(0):
$r=0;
break;
case(1):
$r=1;
break;
case(2):
$r=2;
break;
case(3):
$r=3;
break;
}
Валидация значения рейтинга.
+120
///<summary>
/// Перемещение страницы в/из корзины
///</summary>
///<param name="PageID">Идентификатор страницы</param>
///<param name="Direction">Определяет в корзину или из нее перемещать страницу</param>
///<param name="Page">Экземпляр страницы</param>
///<returns></returns>
///<exception cref="Exception"></exception>
public static Exception PageToRecicle(int PageID, int Direction, Page Page)
{
SiteData data = new SiteData("MsSqlConnectionString");
SiteXml xml = new SiteXml();
Exception ee = new Exception();
SitePage page = new SitePage(Page);
if (page.StartPageID == PageID)
{
try
{
throw new Exception(xml.GetXmlResource("adminmenu.ascx", "RemoveStart"));
}
catch (Exception exc)
{
ee = exc;
}
return ee;
}
if (Direction == 0 || !SitePage.HasPageChilds(PageID, false))
{
data.ExecuteStoredProcedure("sPageToRecicle", ref ee, "@PageID", PageID, "@Direction", Direction,
"@UserName", HttpContext.Current.User.Identity.Name);
}
else
{
try
{
throw new Exception(xml.GetXmlResource("adminmenu.ascx", "RemoveError"));
}
catch (Exception exc)
{
ee = exc;
}
}
return ee;
}
Это фрагмент коммерческой CMS между прочим. Если бы автор родился в Спарте, его бы незамедлительно ё*нули об скалы.
+144
switch(true)
{
case tag1: /*тут обработка*/break;
case tag2: /*тут обработка*/break;
case tag3: /*тут обработка*/break;
case tag4: /*тут обработка*/break;
}
Короче это был кусок парсера SGML файла, который в зависимости от встреченного тега выполнял действия. Этот код недословный, привожу чтоб показать как использовалась конструкция switch. На мой взгляд изящный подход =)
+164
/**
* Constructs a URL encoded query string from an array of key/value pairs
*
* @access protected
* @since 2.0
* @param array $array query string key/value pairs
* @return string
*/
protected function _glue( $array )
{
$query_string = '';
foreach( $array as $key => $val ) :
$query_string .= $key . '=' . rawurlencode( $val ) . '&';
endforeach;
return '?' . substr( $query_string, 0, strlen( $query_string )-1 );
}
http://code.google.com/p/php-twitter/
опять велосипеды
+70
public int someGetCountMethod() {
try {
ResultSet rs2 = db.select("call someGetCountMethod('')");
rs2.first();
return rs2.getInt(1);
} catch (Exception ex) {
return 0;
}
}
где-то откапал вот такое
+157
// если IP в файле есть, выводим сообщение с уведомлением
if ($file[$i]===$ip."\r\n"){
echo 'Вы уже голосовали. Но спасибо, что попытались.<br>';
break;
// если IP нет, тогда считаем рейтинг и записываем IP в файл
} elseif ($file[$i]!=$ip."\r\n") {
// ********* СЧИТАЕМ РЕЙТИНГ *********
// открываем файл с рейтингом
$file_open=fopen("rate.txt", "a+");
$file_read=fgets($file_open);
// разбиваем данные по спецсимволу ':'
$dan=explode(":",$file_read);
// первое значение - сумма всех оценок, второе - кол-во проголосовавших юзеров
// добавляем к сумме оценок - полученную новую оценку
// добавляем к сумме юзеров - 1 человека
if ($_POST['rating_val']>=1 && $_POST['rating_val']<=5){
$r=$_POST['rating_val'];
$ocenka=$dan[0]+$r;
$users=$dan[1]+1;
$write=$ocenka.':'.$users;
ftruncate ($file_open, 0);
fwrite($file_open, $write);
}
// рейтинг считаем по формуле: (сумма оценок + текущая оценка) / (кол-во юзеров + 1 юзер)
$rating=substr(($dan[0]+$r) / ($dan[1]+1),0,3);
echo 'Ваш рейтинг: '.$rating.'<br>
Всего голосов: '.$users.'<br>';
// закрываем файл с рейтингом
fclose($file_open);
// ************************************
fwrite($open_ip, $ip."\r\n");
echo 'Ваш голос учтен. Спасибо.<br>';
break;
} else {
echo 'Странно. Вопреки всякой логике, произошла ошибка, которая появиться не могла.<br>
Пожалуйста, <a href=mail.php>напишите нам письмо</a> и мы обязательно разберемся.';
}
Проверка в скриптике друга. Смотрим самый внешний IF, порадовала ветка else :)
+106
bool tos = true;
susid:
while (tos)
{
goto susid;
}
Энто был я=(
+141
/* Putarc1 печатает точки, определяющие дугу от 0 до 45.*/
void Putarc1(HIMAGE *Im,short x, short y, short x_center, short y_center, unsigned char color){
int starty, endy, y1;
starty=y; endy=(y+1);
for (y1=starty;y1<endy;++y1) PutPoint(Im,y1+x_center,y_center-x,color);
}
/* Putarc2 печатает точки, определяющие дугу от 45 до 90.*/
void Putarc2(HIMAGE *Im,short x, short y, short x_center, short y_center, unsigned char color){
int startx, endx, x1;
startx=x; endx=(x+1);
for (x1=startx;x1<endx;++x1) PutPoint(Im,x1+x_center,y_center-y,color);
}
/* Putarc3 печатает точки, определяющие дугу от 90 до 135.*/
void Putarc3(HIMAGE *Im,short x, short y, short x_center, short y_center, unsigned char color){
int startx,endx,x1;
startx=x; endx=(x+1);
for (x1=startx;x1<endx;++x1) PutPoint(Im,x_center-x1,y_center-y,color);
}
/* Putarc4 печатает точки, определяющие дугу от 135 до 180.*/
void Putarc4(HIMAGE *Im,short x, short y, short x_center, short y_center,unsigned char color){
int starty,endy,y1;
starty=y; endy=(y+1);
for (y1=starty;y1<endy;++y1) PutPoint(Im,x_center-y1,y_center-x,color);
}
/* Putarc5 печатает точки, определяющие дугу от 180 до 225.*/
void Putarc5(HIMAGE *Im,short x, short y, short x_center, short y_center,unsigned char color){
int starty,endy,y1;
starty=y; endy=(y+1);
for (y1=starty;y1<endy;++y1) PutPoint(Im,x_center-y1,x+y_center,color);
}
/* Putarc6 печатает точки, определяющие дугу от 225 до 270.*/
void Putarc6(HIMAGE *Im,short x, short y, short x_center, short y_center,unsigned char color){
int startx,endx,x1;
startx=x*1.0; endx=(x+1)*1.0;
for (x1=startx;x1<endx;++x1) PutPoint(Im,x_center-x1,y+y_center,color);
}
/* Putarc7 печатает точки, определяющие дугу от 270 до 315.*/
void Putarc7(HIMAGE *Im,short x, short y, short x_center, short y_center, unsigned char color){
int startx, endx, x1;
startx=x; endx=(x+1);
for (x1=startx;x1<endx;++x1) PutPoint(Im,x1+x_center,y+y_center, color);
}
/* Putarc8 печатает точки, определяющие дугу от 315 до 360.*/
void Putarc8(HIMAGE *Im,short x, short y, short x_center, short y_center, unsigned char color) {
int starty,endy,y1;
starty=y; endy=(y+1);
for (y1=starty;y1<endy;++y1) PutPoint(Im,y1+x_center,x+y_center,color);
}
Рисуем дуги кусками по 45 градусов
+160
<?$APPLICATION->IncludeFile(
$APPLICATION->GetTemplatePath("include_areas/contacts.php"),
Array(),
Array("MODE"=>"html")
);?> </div>
Вот так индусские проггеры из Bitrix показывают контакты сайта.