Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.09;
Скачать: CL | DM;

Вниз

Проблема с массивами в perl.   Найти похожие ветки 

 
abvgd   (2006-03-15 10:05) [0]

Помогите новичку в perl!

Почему следуший код отказывается работать так как надо.

  %item = ("recv"=>$1, "send"=>$2,"local"=>$3, "remote"=>$4, "state"=>$5, "count"=>0);
    if ($item{"local"} =~ /([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)/i){$item{"port"} = $5;}
    if ($item{"remote"} =~ /([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)/i){$item{"remote"} = "$1.$2.$3.$4";}
    $ip{$item{"remote"}} = $item; <- вот это

потом пытаюсь использовать так :
 print $ip{"66.111.35.189"}{"state"}; <- тут пустота выходит


 
umbra ©   (2006-03-15 10:43) [1]

не совсем ясно, что за хэш %ip и что он содержит, но попробуйте заменить проблемную строку на следующую

$ip{$item}{"remote"} = $item;

и при разработке пишите в начале скрипта

use strict;
use warnings;


С помощью этого можно избежать многих проблем



Страницы: 1 вся ветка

Текущий архив: 2006.04.09;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.034 c
15-1142583574
Курдль
2006-03-17 11:19
2006.04.09
С праздником!!!


1-1141294068
caries
2006-03-02 13:07
2006.04.09
Как вычислить разницу в датах?


2-1143039573
Boris Marchenko
2006-03-22 17:59
2006.04.09
Перестановки


2-1143091143
Nsk3D
2006-03-23 08:19
2006.04.09
Filter


15-1142573326
Геро
2006-03-17 08:28
2006.04.09
.NET — оболочка над Win32?