🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.perl
5 messages
5 total messages Started by Robert Wed, 14 May 1997 11:28
Pytanie poczatkujacego
#250
Author: Robert
Date: Wed, 14 May 1997 11:28
31 lines
1675 bytes
Witam wszystkich.

Prosze o wyjasnienie, co dokladnie dzieje sie w petli foreach ponizszego
skryptu. Chodzi mi o trzy ostatnie linie tej petli:

#!/usr/local/bin/perl
###### The next line is the important one:
read(STDIN,$buffer,$ENV{'CONTENT_LENGTH'};

@name_value_pairs=split('&',$buffer);
foreach $name_value_pair (@name_value_pairs)
  {
   ($name,$value)=split('=',$name_value_pair);         
   $value=~s/+/ /g;
   $value=~s/%([0-9A-Fa-f][0-9A-Fa-f])/hex($1)/g;
   $form{$name}=$value;
  }
print "My name is $form{'name'}\n";                    
print "I live at $form{'address'}\n";
print "My ZIP code is $form{'zip'}\n";

Prosze o wyrozumialosc starych wyjadaczy, ale to moj pierwszy dzien nauki
Perla i od pierwszej chwili sprawia on na mnie wrazenie jezyka bardzo
nieeleganckiego. Coz, musze sie go jednak nauczyc - taki wymog w robocie.
Przy okazji - skad mozna sciagnac jakies manuale, ktore nie opisuja
alfabetycznie wszystkich funkcji, ale raczej wprowadzaja do jezyka w sposob
bardziej kontekstowy i tematyczny. W porownaniu z systemem pomocy VC++ 4.x,
manuale perla sa tragiczne.

Pozdrawiam,
robert
Re: Pytanie poczatkujacego
#251
Author: Marcin Benke
Date: Wed, 14 May 1997 14:18
39 lines
2049 bytes
In article <01bc605a$0a3ca140$0c4675c3@kinga.dawid.com.pl> 
"Robert" <robertn@dawid.com.pl> writes:

   Prosze o wyjasnienie, co dokladnie dzieje sie w petli foreach ponizszego
   skryptu. Chodzi mi o trzy ostatnie linie tej petli:

[...]
      $value=~s/+/ /g;
      $value=~s/%([0-9A-Fa-f][0-9A-Fa-f])/hex($1)/g;
      $form{$name}=$value;

O ile sie znam na medycynie, to:

      $value=~s/+/ /g;
	
Zastepuje wszystkie (opcja g na koncu) wystapienia + przez spacje

      $value=~s/%([0-9A-Fa-f][0-9A-Fa-f])/hex($1)/g;

Zastepuje wszystkie stringi postaci %xy gdzie x i y sa cyframi
szesnastkowymi przez wartosc dziesietna liczby szesnastkowej xy.
Kluczowe sa tutaj nawiasy wokol wzorca i $1, ktory w tym kontekscie
oznacza wlasnie napis-dopasowany-do-pierwszego-wzorca-w-nawiasach ;-)

      $form{$name}=$value;

W Perlu jest specjalny rodzaj tablic indeksowany napisami. form jest
wlasnie przykladem takiej tablicy. Jako calosc nazywaloby sie %form, a
dostep do pojedynczego elementu jest realizowany wlasnie w formie 
$form{indeks}. W tym wypadku indeksem w tej tablicy jest wartosc
zmiennej $name.

Co do manuali to chyba najlepiej szybko isc do ksiegarni po
'Programming Perl'

Pozdrawiam,
		Marcin Benke
----------------------------------------------------------------------------
"Calm down, it's only ones and zeros!" -  DJ Delorie
Re: Pytanie poczatkujacego
#252
Author: Robert
Date: Wed, 14 May 1997 14:32
3 lines
732 bytes
Dzieki serdeczne.
Jeszcze jedno male pytanie, czy znak % ma tu jakies szczegolne znaczenie?
Robert
Re: Pytanie poczatkujacego
#253
Author: Piotr Piatkowski
Date: Wed, 14 May 1997 15:17
10 lines
1134 bytes
Robert <robertn@dawid.com.pl> wrote:
: Dzieki serdeczne.
: Jeszcze jedno male pytanie, czy znak % ma tu jakies szczegolne znaczenie?

"Tutaj" nie - znak % ma szczególne znaczenie w URL'u, jest używany do
kodowania znaków które w normalnym URLu są zabronione, za pomocą 
sekwencji %XX gdzie XX to cyfry hex. 

-- 
Piotr Piątkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
Re: Pytanie poczatkujacego
#254
Author: Robert
Date: Wed, 14 May 1997 15:32
3 lines
759 bytes
Jeszcze raz dzieki...
Pozdrawiam,
Robert
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads