Решил учить перл, сразу наткнулся на некоторые проблемы. PHP: snet@bt:/usr/bin$ perl -w open(FO, "+>> /home/snet/qwe.txt"); seek(FO,0,1); $str=<FO>; @arr=<FO>; print $str,"\n"; foreach my $ar (@arr){ print "\n",$arr,"\n"; } Use of uninitialized value $str in print at - line 5. Что я делаю неправильно? что не так с переменной стр?
есть в перле такая функция (аналогичная php:explode(), которая выводит все значения элементов одинарного массива в одну строку, поставив каждому разделитель? Например как в php: PHP: $massiv=array("Квантильярд","квинтильйон","демиарт","раз два", 3); echo explode(" | ", $massiv); #выведет "Квантильярд | квинтильйон | демиарт | раз два | 3"
У вас глюки, этим занимается функция implode(). В перле аналогичную операцию делает join Code: my @massiv = ("Квантильярд","квинтильйон","демиарт","раз два", 3); print join " | ", @massiv;
Всем привет! Может я не втему - но у меня такой вопрос, как можно быстро открыть rar архив или может кто подскажет чем. За нужную помощь - оплата. Аська 647364146.
Интересует вопрос. как защитить свой перл скрипт. скрипт будет компилирован в ехе и запакован. думаю может к железу привязать. кто подскажет как ето реализовать в перле?
Моя тема вопроса касается многопоточности в perl. Чтобы вам было легче понять что я хочу, я задам его в таком виде: Преположим я создал несколько потоков: Васю, Петю и дождь; Вася бежит налево, Петя думает, а дождь вот-вот, спустя несколько секунд, должен закончиться. И вот, когда он закончится, мне нужно, чтобы Петя перестал думать, а Вася побежал направо. Кароче как можно реализовать возможность общения потоков друг с другом? Вообще мне сейчас надо, чтобы если первый поток закончился, то и прервали свою работу все остальные. Не представляю даже как это можно сделать. Может что-то типа unset(Threads);
snet попробуй сделать переменную, обзовем ее $is_stopped, значение = false. когда дождь заканчивается, установи ее в true, в других потоках проверяй, если она true, то threads->exit->detach, или как-то так... у меня свой вопрос, в общем-то не по Perl, но нужно сделать на Perl. как подключаться к дедику? знаю что 3389 порт, знаю что можно через сокеты... но что слать? гуглил-перегуглил, ниче толкового не видел. В сниффере что-то вообще непонятное... короче I need help!
Как скачать gif изображение через http, используя только стандартные модули, никаких image magic'ов которые надо скачивать. p.s. скачать не проблема, но задача сделать без них. Но если не существует других вариантов, то буду рад и этому. p.s. не могу найти, дайте хоть направление, ++ если поможете конечно.
Стандартные модули чего именно..?! ActivePerl или чего-то другого..?! LWP::UserAgent или сокеты в твоём понимании стандартные модули..?! UPD: Активперла нет под рукой, но должно работать... Code: #!/usr/bin/perl use LWP::UserAgent; my $ua = LWP::UserAgent->new; $ua->agent("Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.19) Gecko/2010031422 Firefox/3.0.19"); my $gif_url = 'http://www.livegif.ru/Gallery/PRIRODA/RASTENIA/FLOWER34.GIF'; my $gif = $ua->get($gif_url)->content(); open(OUT, '> myGif.gif'); binmode OUT; print OUT $gif; close(OUT);
не cpan я не там искал, не думал что можно это сделать lwp или сокетами. Спасибо за направление, дальше я сам погуглю. -------------------добавлено------------------- и за пример.
взял для работы с wmi ,Win32::OLE , он оказывается не работает с потоками. хоть и код Win32::OLE вынесен из потоков все равно выдает ошибку. подскажите как решить проблему. или модуль для работы wmi и потоками
loveplanet всем привет) Ребят, пишу простенький однопоточный спамер под лавпленет для себя. Логинится ок, а вот сообщение не отправлят, хотя по запросам должен. В чем косяк? Code: use LWP::UserAgent; use HTTP::Cookies; use strict; my $browser=LWP::UserAgent->new; $browser->cookie_jar( HTTP::Cookies->new); my $response=$browser->post('http://loveplanet.ru/a-logon/', [ "a" => 'logon', "back" => "", "login" => '', "login" => 'LOGIN', "password" => "PASS", "VAnketaId" => "0", "RedirectBack" => '/my/reg.phtml', ])->as_string; $response=$browser->post('http://wap.loveplanet.ru/a-message/',[ "a" => 'message', "d" => '1', "login" => "sega4015", "message" => "hello", "Submit" => "%D0%9E%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D1%82%D1%8C", ])->as_string; open (XX,">sgds.html"); print XX $response;
как ты это узнал ? плюс юзер-агент у тебя не обьявлен, типа $browser->agent("Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.19) Gecko/2010031422 Firefox/3.0.19");