- 1
- 2
- 3
<?php
if (preg_match("/\.[gjpi][ipnc][fgo]/i", $_SERVER['REQUEST_URI'])) exit;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+160
<?php
if (preg_match("/\.[gjpi][ipnc][fgo]/i", $_SERVER['REQUEST_URI'])) exit;
+157
$__=array('!','й','у','х',' ','е','б','е','т',' ','о','т','э',' ',',','т','е','Н');
$_=array_reverse($__);
$__=array_slice($_, 0, count($__)-1);
echo implode($__);
От автора инновационного вики-движка.
Оригинальный посыл на PHP.
Два массива, многозначительная третья строка.
И все это ради задачи вывести на экран посыл на три буквы, если каждый элемент массива - буква и нулевой элемент - конец фразы.
+158
$rows=$this->DB->FetchArray($query, MYSQL_ASSOC);
@reset($rows);
while (list($key, $val)=@each($rows))
$this->$key=$val;
Ы
+143
$a = "1";
$b = "$a";
if($a == $b) {
echo '$a = $b';
}
Восемь часов за компом.. Посмотрел на код еще раз :D
+143
// Так мы генерируем страницу:
ob_start();
renderPage($price, $order);
$renderPage = ob_get_clean();
// Функция renderPage выглядит так:
function renderPage(&$setup, &$order){
?>
<div id="setupMenu">
<!-- дальше простой html с подстановкой php-переменных -->
<?php } ?>
Вот почему у функции нельзя было сделать простой return, а надо было закрывать скобки php и затем при вызове использовать ob_*, чтобы получить html.
+166
$need = explode(',', 'name,phone');
Оригинальный способ создания массивов
+162
if(!function_exists('getImg')){
function getImg($isVip)
{
$type = false;
if (isset($_GET['f']) && $_GET['f']) $type = 1;
if (isset($_GET['bl']) && $_GET['bl']) $type = 16;
if (isset($_GET['lw']) && $_GET['lw']) $type = 'author';
if (isset($_GET['sym']) && $_GET['sym'] && $isVip) $type = 2;
return $type;
}
}
Функция getImg: хм... название как бэ намекает нам, что должно на выходе получиться что-нибудь типа картинки или её адреса, НО НЕТ! нам возвращается какой-то тип...
Что это за тип (ну да, да, php бестиповой язык, но нужно же как-то хотя бы намёки на тип делать) - одному Богу известно, НО! эта переменная изначально логическая, потом ВНЕЗАПНО превпращается в число, ну и под конец может быть и строкой! (ну а почему бы и нет)
Причём конечно же всем очевидна последовательность: 1, 16, (опять-таки ВНЕЗАПНО) 'author', ну и по уже "понятной" логике в конце 2
Да, ну и разумеется вокруг оооочень много комментариев поясняющие этот кусок кода...
А вы на индусов ругаетесь... Так-то!
+165
class microTimer {
function start() {
global $starttime;
$mtime = microtime();
$mtime = explode( ' ', $mtime );
$mtime = $mtime[1] + $mtime[0];
$starttime = $mtime;
}
function stop() {
global $starttime;
$mtime = microtime();
$mtime = explode( ' ', $mtime );
$mtime = $mtime[1] + $mtime[0];
$endtime = $mtime;
$totaltime = round( ($endtime - $starttime), 5 );
return $totaltime;
}
}
DLE 9.0
+171
define('ERROR', 1);
define('WARNING', 2);
define('PARSE', 4);
define('NOTICE', 8);
define('CORE_ERROR', 16);
define('CORE_WARNING', 32);
define('COMPILE_ERROR', 64);
define('COMPILE_WARNING', 128);
define('USER_ERROR', 256);
define('USER_WARNING', 512);
define('USER_NOTICE', 1024);
// ---------------------------
$errortype = array(
1=>'Ошибка',
2=>'Предупреждение!',
4=>'Ошибка разборщика',
8=>'Замечание',
16=>'Ошибка ядра',
32=>'Предупреждение ядра!',
64=>'Ошибка компиляции',
128=>'Предупреждение компиляции!',
256=>'Пользовательская Ошибка',
512=>'Пользовательскаое Предупреждение!',
1024=>'Пользовательскаое Замечание',
2048=>'Небольшое замечание',
8192=>'Устаревший код');
+160
<?php
require_once 'mainfunc.php';
$template->msg('SET TITLE', $conf['wiki']['title']);
$rev = intval(@$_GET['rev']);
if(@$_GET['ae']){session_destroy();unset($admin);}
?>
<h1><?= $conf['wiki']['title']; ?></h1>
<p><a href="create.php">[Создать статью]</a> <?php
if($rev) echo '<a href="index.php?rev=0">[Перевернуть]</a>';
else echo '<a href="index.php?rev=1">[Перевернуть]</a>';
?></p>
<?php
$tpr = array();
echo '<p>';
$fls = array();
foreach(scandir('files') as $k) if($k{0}!='.') $fls[]=$k;
natsort($fls);
if($rev) $fls=array_reverse($fls);
foreach($fls as $k){
if($k{0}=='-') continue;
$f=file('files/'.$k);
if($f[0]{0}=='#') $f[0]{0}=''; $tpr[] = '<a href="view.php?id='.$k.'">'.$f[0].'</a><br>';
}
$pnav = new PageNavigator($tpr, 'index.php?page=$p&rev='.$rev);
$pnav->page();
echo '</p>';
echo '<p class="nav">';
$pnav->panel();
echo '</p>';
if(@$admin) echo '<p>Вы админ <a href="index.php?ae=1">[X]</a></p>';
$template->act(); //Запускаем вывод
?>
Инновационный вики-движок для вап-интернета, в действии можно посмотреть здесь: http://wiki.wup.ru/
От одного index.php становится худо.
Плюс работает это еще с помощью какого-то фреймворка, при этом весь html размазан практически по всему проекту, да и все это еще на файлах.
Куча дыр, фильтрующие регулярки не пашут, даже банального антифлуда нет - можно жать f5 и радоваться.
Полностью сорцы можно скачать тут: http://wiki.wup.ru/wikibackups/