Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #27, ФЕВРАЛЬ 2003 г.

ВЕСЕЛАЯ ТУСОВКА - веб-сервисы
для создания современного сайта

Леха ББ aka Alexys

Спецвыпуск Xakep, номер #027, стр. 027-042-3


Для написания CGI-шников в основном используются 2 языка - Perl и PHP. Более сложные CGI-шники, для которых важны скорость обработки и надежность, пишутся на C. Оба языка (Perl и PHP) - мультиплатформенные и фриварные, в отличие от мелкософтовского ASP. По результатам опроса, проводившегося на www.hotscripts.com, выяснено, что на ПХП пишет побольше народу (56%), чем на Перле (15.6%). Это и понятно, ведь ПХП будет попроще Перла, да и встраивать пхп-шные скрипты в html-код намного проще. ПХП-шные скрипты даже хранятся не в папке cgi-bin, как перловые скрипты, а в папке с гипертекстовыми документами.

CGI-шники помогают автоматизировать работу сайта. Надо тебе сделать сайт для своей группы, чтобы постоянно выкладывать фотки с последних попоек :). Неужели тебе захочется для каждой фотки клепать отдельную страницу, особенно если количество фоток исчисляется сотнями? Вот и я думаю, что не захочешь. Намного проще будет разок сесть и накатать скрипт, который будет сам генерить страницы и вставлять в них фотки. А заодно можно будет замутить небольшой форум, благодаря которому можно будет высказывать свое мнение по поводу той или иной фотки. С помощью CGI-шников можно вести учет посещений сайта, устраивать опросы посетителей, отправлять письма прямо с сайта без задействования почтовых программ.

Perl или PHP?

На чем скриптить - это, конечно, твое дело. Тем более, что на обоих языках можно работать с базами данных, что тоже немаловажно при разработке крупных проектов.

Perl (Practical Extraction а Report Language - практический язык для извлечения и составления отчетов) был создан Larry Wall'ом в 1986 году для автоматизации обработки текстовой информации. По заявлению создателя, "Perl создан, чтобы сделать решение простых задач простым и решение сложных задач возможным". С появлением инета Perl стали использовать как язык для написания cgi-шников. Поэтому регулярные выражения просто рулят в Перле. Собственно, из-за них Перл и стал "родным" языком программеров под веб. Записываются они между двух слэшей: /regular_expression/, а сделать с их помощью можно ой как много. Одним из простых, но полезных примеров является замена в тексте кусков http://some_url на готовенькие ссылочки:

$string=~s/http:\/\/\S+/<a href=$string>$string<\/a>/g;

В результате все адреса, встречающиеся в обрабатываемом тексте, будут преобразованы в гиперссылки, нажав на одну из которых, будешь послан по адресу. Символ "g" означает, что будет сделана глобальная замена (т.е. по всей строке). Ни на каком другом веб-языке не получится сделать подобную замену так быстро и просто.

PHP (Hypertext Preprocessor), появившийся несколько позже Перла (в 1997 году), создан для написания веб-приложений, в отличие от Перла. Уже поэтому о ПХП можно сказать, что он меньше нагружает сервак. Основное его отличие от Перла - это встраивание пхп-шного кода в html-код. Этот код просто отделяется специальными тэгами (<?php ... ?>). На мой взгляд, PHP смог объединить в себе Perl и SSI, но он не настолько хорош в работе с регулярными выражениями.

Назад на стр. 027-042-2  Содержание  Вперед на стр. 027-042-4