小弟没用过perl,现在上头让我解析这代码,哪位大哥能帮我一行行讲讲啊!!
这代码作了什么?谢谢阿!!
sub cacheclear {
    my ($targethost, $diffdata, $servicename, $CDir, $PDir) = @_;    foreach my $i (sort keys %{$diffdata}) {
# foreach my $j (keys %{$diffdata{$i}}) {
foreach my $j (keys %{$diffdata{$i}}) {
         if ($diffdata{$i}{$j} !~ /^\s*$/) {
my @url = ();
if ($j eq "NEWSITEMID") {
    push (@url, "$CDir?n=$diffdata{$i}{$j}");
    push (@url, "$CDir?ichiran=True&n=$diffdata{$i}{$j}");
} else {
    push (@url, "$diffdata{$i}{$j}");
} print DEBUG "$i : $j : $diffdata{$i}{$j}\n";
foreach my $u (@url) {
    my $sock = IO::Socket::INET->new(PeerAddr => "$targethost",
 PeerPort => 80,
 Proto    => 'tcp',
 Timeout  => 10);
    if (! $sock){
return;
    }
    print "Connected $targethost:80\n" if $debug;     print "GET ||$u|| HTTP/1.0\r\n" if $debug;
    print DEBUG "$$ : $targethost : GET ||$u|| HTTP/1.0\r\n" if $debug;     print $sock "GET $u HTTP/1.0\r\n";
    print $sock "Host: $servicename\r\n";
    print $sock "Cache-Control: no-cache\r\n\r\n";
    while(<$sock>){
####
    }
    close ($sock)
}
    }
}
    }
}