Видео ролики бесплатно онлайн

Смотреть 365 видео

Официальный сайт mkad14 24/7/365

Смотреть видео бесплатно

afiskon 14.03.2010 16:24

Скрипты — Основы Perl. Часть 3 – use strict, ссылки и функции

Продолжение серии статей об основах программирования на Perl. В этой части речь пойдет обо всем, что нужно знать для написания функций. Думаю, в цикл войдет еще одна, максимум две части...


Тэги: perl скрипты ссылки Урок функции
+ 4 -
Похожие Поделиться

sattellite 14.03.2010 17:12 #
+ 0 -
Замечательно написано. Спасибо большое.
Вот, кстати вчера столкнулся с проблемой объявления переменных.
#!/usr/bin/perl -w

use strict;

my %envinfo = (
SERVER_SOFTWARE => "Программное обеспечение сервера",
SERVER_NAME => "Имя узла сервера или IP-фдрес",
GATEWAY_INTERFACE => "Версия CGI спецификации",
SERVER_PROTOCOL => "Имя протокола сервера",
SERVER_PORT => "Номер порта для сервера",
REQUEST_METHOD => "Метод HTTP-запроса",
PATH_INFO => "Дополнительная информация о пути",
PATH_TRANSLATED => "Конвертированная информация о пути",
DOCUMENT_ROOT => "Корневой каталог сервера",
SCRIPT_NAME => "Имя сценария",
QUERY_STRING => "Строка запроса",
REMOTE_HOST => "Имя узла клиента",
REMOTE_ADDR => "IP-адрес клиента",
AUTH_TYPE => "Метод аутентификации",
REMOTE_USER => "Аутентифицированное имя пользователя",
REMOTE_IDENT => "Удаленный пользователь",
CONTENT_TYPE => "Медиа-тип данных",
CONTENT_LENGHT => "Длина тела запроса",
HTTP_ACCEPT => "Медиа-типы данных, воспринимаемых клиентом",
HTTP_USER_AGENT => "Браузер клиента",
HTTP_REFERER => "URL страницы, с которой пришел пользователь",
HTTP_COOKIE => "Куки, посланные клиентом"
);
print "Content-type: text/html\n\n";

print "
<html>
<head>
<title>Список переменных окружения</title>
</head>
<body>
<h1>Переменные CGI окружения</h1>
<table border=1>
<tr>
<th>Имя переменной</th>
<th>Описание</th>
<th>Значение</th>
</tr>
";

my($name,$info);

foreach $name (keys %ENV) {
my $envinfo{$name} = "Дополнительная переменная, определяемая этим сервером";
unless exists $envinfo{$name};
}

foreach $name (sort keys %ENV) {
$info = $envinfo{$name};
my $value = $ENV{$name} || "<i>Не определено</i>";
print "<tr><td><b>$name</b></td><td>$info</td><td>$value</td></tr>\n";
}
print "</table>\n</body></html>\n";

и выдает вот такую ошибку:
info.cgi|49| syntax error near "$envinfo{"
info.cgi|57| syntax error near "}"

Код этот взял из учебника. В первоначальном варианте тут было 14 ошибок. Смог довести до такого состояния, но все равно не могу заставить работать.
afiskon 14.03.2010 17:36 #
+ 0 -
Попробуйте без my в 46-ой строке. Перед unless кстати, как я понимаю, точка с запятой там тоже не нужна.
sattellite 14.03.2010 23:24 #
+ 0 -
И если поставить в 46-ой строке my $name;
а в 54-ой my $info = $envinfo{$name};
то ошибок целых 4 выскакивает.
kstep 15.03.2010 20:15 #
+ 0 -
Убери нафиг точку с запятой после my $envinfo{$name} = "...":

foreach $name (keys %ENV) {
my $envinfo{$name} = "Дополнительная переменная, определяемая этим сервером" unless exists $envinfo{$name};
}
sattellite 15.03.2010 20:56 #
+ 0 -
помогло, спасибо
digiwhite 14.03.2010 17:16 #
+ 0 -
Все бы ничего, да как-то вот тэг code вы использовать поленились...
exelens 14.03.2010 17:23 #
+ 0 -
Нее это я поленился. Раньше пост представлял из себя лишь первую строчку.
А я скопипастил всё целиком. Теги поставлю чуть позже.
afiskon 14.03.2010 17:33 #
+ 0 -
Давайте до понедельника она повесит в виде поста-ссылки, потом я скопирую ее целиком. Мне не хотелось бы, чтобы Google принял welinux за первоисточник.
exelens 14.03.2010 17:46 #
+ 0 -
Может быть есть тогда смысл настроить RPC на блоге? Оно бы само пингануло гугль и появилось бы в выдаче.
exelens 14.03.2010 18:02 #
+ 0 -
Ты ленту рсс фидбёрнера настрой, чтобы оно само пинговало гугль.
+ прикрути http://friendfeed.com и твиттер к ленте RSS - это значительно убыстрит индексацию.
afiskon 14.03.2010 19:54 #
+ 0 -
Да Гугл на самом деле все уже давно проиндексировал, за счет Twitter-а скорее всего. Теперь надо Яндекс подождать...
exelens 14.03.2010 19:59 #
+ 0 -
Это может занять даже 2 недели =))
Ибо пути его неисповедимы =)

В хорошем качестве hd видео

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн