Показаны сообщения с ярлыком php. Показать все сообщения
Показаны сообщения с ярлыком php. Показать все сообщения

вторник, 6 января 2009 г.

PHP 64-bit где?

Всё еще нет версии php-5.*-Win32-VC9-x64.zip. :(

Доступна только php-5.3.0alpha2-Win32-VC9-x64.zip.

Да, и таки выкинул Apache с локальной машины за ненадобностью. PHP ставится на IIS 7 в четыре клика, можно сказать.

воскресенье, 20 января 2008 г.

Новая версия Glossword WAMP

Выпустил новую версию Glossword WAMP -- программы быстрой установки Apache 2.2.8, MySQL 5.1.22-rc, PHP 5.3.0-dev для Windows 2000/XP/2003.

Сравнение WAMP'ов.

среда, 5 сентября 2007 г.

Вакансия

Бывают и такие вакансии... (см. ключевые слова)

среда, 20 июня 2007 г.

Unicode captcha

Спамеры и до моего глоссворда добрались... Придётся делать каптчу - http://glossword.livejournal.com/7102.html

Captcha готова

Captcha готова.

В принципе, неплохо. Есть случайное расположение фона, случайный промежуток между символами, случайный поворот символов и даже число этих символов случайно - от 2 до 5. Набор символов специально подобран так, чтобы человек их не спутал, например 0 с О. Такого я пока ни у кого не видел.

Существует мнение, что каптча с картинками (объектами) более проста для человека и более сложна для распознавания ботами. Например http://www.firepages.com.au/captcha.htm (есть вариант с разными между собой объектами). Я не согласен -- число объектов, как правило, не превышает 10, а числа от 1 до 10 легко подставить в параметры скрипта обратной связи и слать спам как и слали раньше.

Исключить подставку невозможно в принципе, даже если создать случайное имя для поля html-формы, например вместо &captcha=6U5R376 делать &post[936fb873a74f29b4cf49240d3b02f7b

9]=6U5R376.

Смешно выглядят некоторые каптчи, где число, необходимое для подтверждения,
присутствует в html-коде: src="create_image.php?n=6U5R376" - пользы от таких каптчей никакой, так как число можно выцепить ботом и оправить форму со спамом, как обычно.

воскресенье, 20 июня 2004 г.

PHP: include() vs. require()

По материалам ru_php следует, что для включения php-файла нужно пользоватся include(), а не require(), и не изобретать своих функций.
В то же время, функциями include_once() и require_once() пользоваться вообще не нужно. Они намного (в 100-105 раз) медленнее чем изобретенная функция my_include_once().

На основе проведенных тестов справедливо утверждать, что скорость выполнения php-скрипта может варьироваться от 0,005 до 25 секунд.

Технические подробности ниже.

Результаты тестирования:

0.00478544235229 my_include_once()
0.42984147071838 include_once()
0.43468303680420 require_once()
0.47337899208069 my_include()
0.56996216773987 include() (первое включение файла - самое медленное)
0.57470202445984 require() (первое включение файла - самое медленное)

При вложенном файле на 65 КБ:

0.00593957901000 my_include_once()
0.44436344146729 include_once()
0.45239635467529 require_once()
4.86428661346440 my_include()
23.6450767993930 include()
24.7919821739200 require()

Apache/1.3.27 (Win32), PHP 4.3.6 (module), Pentium IV 2.4 GHz


Код волшебной функции my_include_once():

function my_include_once($f)
{
static $ar = array();
if (!array_key_exists(($rf = crc32($f)), $ar))
{
$ar[$rf] = true;
my_include($f);
}
}

Код функции my_include():

function my_include($f)
{
eval('?>'. file_get_contents($f) .'
}