- 1
dirname(__FILE__)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+147
dirname(__FILE__)
+147
if(!empty(_SESSION['order']['contact']['user_id']))
$user_id = preg_replace('/\D|\s/', '', $_SESSION['order']['contact']['user_id']);
Радует знание регулярных выражений =)
+147
if (isset($HTTP_GET_VARS['main']) || isset($HTTP_POST_VARS['main']))
{
...
$FileInform = 'content/main.php'; //Файл информации
$MainPage = 1;
}
elseif (isset($HTTP_GET_VARS['hystory']) || isset($HTTP_POST_VARS['hystory']))
{
...
$FileInform = 'content/about.php'; //Файл информации
$MainPage = 1;
}
elseif (isset($HTTP_GET_VARS['_delete_requirements']) || isset($HTTP_POST_VARS['_delete_requirements']))
{
...
}
elseif (isset($HTTP_GET_VARS['vacancy']) || isset($HTTP_POST_VARS['vacancy']))
{
...
}
elseif (isset($HTTP_GET_VARS['daughter']) || isset($HTTP_POST_VARS['daughter']))
{
...
}
elseif (isset($HTTP_GET_VARS['contacts']) || isset($HTTP_POST_VARS['contacts']))
{
...
}
elseif (isset($HTTP_GET_VARS['obyavlall']) || isset($HTTP_POST_VARS['obyavlall']))
{
...
}
elseif (isset($HTTP_GET_VARS['secondflats']) || isset($HTTP_POST_VARS['secondflats']))
{
...
}
else
{
...
}
Top($title,$keywd, $descr);
Horizontal_Menu();
MainPart($FileInform);
Bottom();
эйфелева башня, ё )
PS: register_globals = "on" кстате )))
+155
while($room_price_dbl = $room_price_list_dbl->GetNext())
{
$price_dbl=$room_price_dbl["PROPERTY_PRICE_DBL_VALUE"];
if($price_dbl==0)
{
$prop_price = "property_PRICE_SGL";
}
else
{
$prop_price = "property_PRICE_SGL";
}
}
писал предыдущий программист. ужас! стыдно должно быть!
разработчик сайта el-tour.com
+151
elseif (array_key_exists(pathinfo($_SERVER['HTTP_HOST'], PATHINFO_EXTENSION), $lang_array)) {
$language = pathinfo($_SERVER['HTTP_HOST'], PATHINFO_EXTENSION);
}
else
$language = 'en';
Из того же проекта, где зародился шаблонизатор.
Минималистичный файл-хостинг, который все решает за хозяина.
Конфиг - только папка хранения файлов и макс. объем.
А язык он определяет сам. По доменному имени. Каждый раз при обращении к странице.
+155
// Функция подключения файлов шаблонов -----------------------------------------------------------------
function tpl_include($filepath, $title = '', $content = '') {
global $lang, $lang_array;
$tpl_body = str_replace("\n", '', file_get_contents($filepath));
$tpl_body = preg_replace('#\{loop (.*?)\}(.*?)\{\/loop\}#i', "\nEOL;\nforeach (\\1 as \$var=>\$val) echo <<<EOL\n\\2\nEOL;\necho <<<EOL\n", $tpl_body);
$tpl_body = preg_replace('#\{const (.*?)\}#i', "\nEOL;\necho \\1;\necho <<<EOL\n", $tpl_body);
$to_eval = "echo <<<EOL\n".$tpl_body."\nEOL;\n";
eval($to_eval);
}
// -----------------------------------------------------------------------------------------------------
По следам http://govnokod.ru/5658.
Шаблонизатор этот жив и кочует из проекта в проект.
Можно ссылаться на переменные из массива $lang, где хранится локализация и на $title и $content. Вот так - {$title}.
Можно ссылаться на любые константы. Например, {const ROOT_PATH}.
Можно делать цикл {loop $array}{/loop}, где внутри доступны переменные {$var} и {$val}.
Полностью избавляет от шорт-тегов, которые скоро уже и уберут из похапе.
Работает лишь чуть медленнее include с шорт-тегами (0.8 против 1.2 на 10к прогонов) и, разумеется, быстрее Смарти.
При необходимости в каком-то проекте в чем-то еще - можно легко добавить.
В общем - изящное вонючее решение.
+157
// редиректим адреса без слеша на такие же со слешем
$uri = $_SERVER['REQUEST_URI'];
$is_file = false;
if ( (substr_count($uri,".php")>0) or (substr_count($uri,".html")>0) ) {
$is_file = true;
}
if ($is_file == false) {
$len_uri = strlen($uri);
// находим последнее вхождение слеша
$reverst_str = strrev($uri);
//die($reverst_str);
$last_slash = strpos($reverst_str,"/");
//die($last_slash);
if ($last_slash!==0) {
$uri .="/";
$status = "301 Found";
//header("Status: ".$status);
header('HTTP/1.1 301 Moved Permanently');
header("Location: http://www.thermostudio.ru"."$uri");
exit();
}
}
встретилось в проекте одном жаль автор не подписался, увековечить бы...
+154
function getDateFromTime($dataTime){
$strDate = date('d-m-Y', $dataTime);
$arrDate = explode('-', $strDate);
return mktime(0, 0, 0, $arrDate[1], $arrDate[0], $arrDate[2]);
}
руки-жопа-голова%)
+155
$arrParams = array();
$arrParams['table'] = array();
$arrParams['limit'] = 20;
$arrParams['table']['id'] = 'cmt_summary';
$arrParams['table']['class'] = 'comments';
$arrParams['table']['rows_id'] = 'cmt_{{comment_id}}';
$arrParams['table']['columns'] = array();
$arrParams['table']['columns']['comment_id'] = array();
$arrParams['table']['columns']['comment_id']['name'] = 'Comment ID';
$arrParams['table']['columns']['comment_id']['class'] = 'a';
$arrParams['table']['columns']['comment_id']['sort'] = true;
$arrParams['table']['columns']['comment_id']['search'] = array('type'=>'int');
$arrParams['table']['columns']['comment_id']['row'] = $sRowOutput;
$arrParams['table']['columns']['user_name'] = array();
$arrParams['table']['columns']['user_name']['name'] = 'Poster Username';
$arrParams['table']['columns']['user_name']['class'] = 'a';
$arrParams['table']['columns']['user_name']['sort'] = true;
$arrParams['table']['columns']['user_name']['search'] = array('type'=>'string');
$arrParams['table']['columns']['user_name']['row'] = $sRowOutput;
$arrParams['table']['columns']['email'] = array();
$arrParams['table']['columns']['email']['name'] = 'Poster Email';
$arrParams['table']['columns']['email']['class'] = 'a';
$arrParams['table']['columns']['email']['sort'] = true;
$arrParams['table']['columns']['email']['search'] = array('type'=>'string');
$arrParams['table']['columns']['email']['row'] = $sRowOutput;
Прошло уже почти 3 месяца как я сижу на проекте, а он не перестаёт меня удивлять :)
Глядя на эти строки думается что-то подобное было в головах у кодеров:
- Зачем юзать объекты, в массивы всё нормально ложится и они легче.
- По фиг что массивы не подхватывает ни одна IDE, Notepad++ всё ещё бесплатный, а большего в PHP и не надо.
- Зачем XML и XSD? Зачем это усложнение? Ну и что Ext4Yii хороший пример того как можно это сделать? Нам не нужны слабые духом программисты! :)
+155
// Это у них такой конфиг:
//--------------------------------------------------------------------------------------
// Определение дирректорий сервера
$siteDir = '';
$DIR = array(
'root' => $_SERVER['DOCUMENT_ROOT'].$siteDir,
);
$DIR['HOST'] = 'http://'.$_SERVER['HTTP_HOST'];
$DIR['media'] = $DIR['root'].'/media/';
$DIR['theme'] = $DIR['root'].'/themes/';
$DIR['lib'] = $DIR['root'].'/lib/';
$DIR['script'] = $DIR['root'].'/scripts/script.';
// А это у них такая мвц
// при error_reporting(E_ALL) - таааакая знатная жопа
//---------------------------------------------------------------//
/* Организация простейшего MVC */
//---------------------------------------------------------------//
//Загружаем модель для формированния данных
if(file_exists($DIR['script'].$Page.'.php'))
require_once($DIR['script'].$Page.'.php');
//Загрузка шаблона для отоброжения данных
require_once($DIR['theme'].'default.php');
Ща сижу на собеседование, попросили сделать пару страничек, используя местные порядки.
Сижу в шоке.