Service for programmers - składnia języka Perl
Składnia
Perla
Strona główna
Składnia Perla
W tym artykule przedstawię podstawową składnie Perla.
Na początek przeczytaj ten artykuł jeżeli chcesz zacząć
programowanie w Perlu. Omówię w nim podstawowe komendy, a także zasady
funkcjonowania skryptów CGI. Niezbędna tutaj okaże się podstawowa
wiedza z zakresu HTML'a.
Pierwszy skrypt
To co zaczynamy? Pierwszy skrypt, który napiszemy będzie
dynamicznie generować stronę HTML. Nie będzie to zbyt skomplikowane.
Jak już zapewne wiesz, skrypty CGI nie są programami wykonywalnymi (
tzn. plikami EXE, które można uruchomić ). Są to zwykłe pliki
tekstowe, które są TYLKO uruchamiane podczas jego wywołania. ZAWSZE w
pierwszej linii skryptu musi się znaleźć linia ( ścieżka ) do interpretera
Perla. Ta linia na większości serwerów wygląda tak:
#!/usr/bin/perl
Jeżeli nie jesteś tego pewien skontaktuj się z
administratorem swojego serwera. Podstawową komendą w Perlu jest print.
Powoduje ona wyświetlenie tekstu zawartego w cudzysłowach. Jako, że
chcemy dynamicznie wygenerować stronę HTML w cudzysłowach musimy
zamieścić kod HTML. Podstawowa składnia zarówno w Perlu jak i w większości
języków to średnik na końcu każdej komendy.
Utwórz więc plik hello.pl na swoim dysku i otwórz go
w Notatniku Windows. Wpisz taki kod:
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "<HTML><HEAD><TITLE>Pierwsza strona wygenerowana dynamicznie!</TITLE></HEAD>\n";
print "<BODY><CENTER><H1>Pierwszy skrypt CGI</H1></CENTER></BODY></HTML>\n";
Już wyjaśniam o co w tym wszystkim chodzi. Jeżeli
chcesz dynamicznie wygenerować i wyświetlić stronę HTML MUSISZ
ZAWSZE umieścić taką linię jako pierwszą:
print "Content-type: text/html\n\n";
Ten tekst nie będzie widoczny w przeglądarce.
Informuje on jedynie o typie dokumentu. W naszym wypadku jest to text/html.
Zwróć uwagę na znaki na końcu linii: \n\n. Ten znak to znak nowej
linii ( tak samo jak w C++ ). Nie jest on brany przez kompilator podczas
wyświetlania tekstu pod uwagę. Jest to taki ukryty znak ENTER :) W
pliku tekstowym nowa linia będzie napisana pod spodem, a nie będzie to
linia "ciągła". Mam nadzieje, że wszystko jasne. Tak więc
po tej pierwszej obowiązkowej linii muszą się znaleźć dwa znaki
nowej linii.
Kolejne linie to dwie linie HTML'a. Nie będę ich tutaj
omawiał bo ich zrozumienie wymaga znajomości HTML'a, a mam nadzieje,
że tą wiedzę posiadasz. W każdym bądź razie rezultat działania
tego skryptu to napis:
Pierwsza strona wygenerowana dynamicznie
Zwróć uwagę, że wszystkie linie tego skryptu ( oprócz
pierwszej ) zostały zakończone średnikiem. Są oczywiście wyjątki,
ale o nich kiedy indziej.
Umieszczenie skryptu na serwerze
Dokładniejsze omówienie tego zagadnienia została
umieszczona w artykule "Instalacja skryptu". [ Przeczytaj...
]
Musisz jedynie ten plik umieścić na serwerze w
katalogu cgi-bin i nadać mu prawa uruchamiania - zmiana atrybutów na
755.
Teraz w przeglądarce wpisujesz URL do pliku CGI - np:
www.4programmers.net/cgi-bin/hello.pl
To powinno spowodować uruchomienie i wykonanie programu.
Oczywiście to co tutaj przedstawiłem było
najprostszym programem. Poznałeś dotychczas pierwszą, podstawową
komendę - print.
Dalsza nauka Perla
Wszystkie języki programowania umożliwiają
deklarowania zmiennych. Zmienna jest to obszar w pamięci, który
przechowuje pewne wartości ( liczby, tekst ). W Perlu deklarowanie
zmiennych jest o wiele łatwiejsze niż np. w C++ lub Delphi. W tych językach
musisz po słowie kluczowym napisać nazwę oraz typ zmiennej. W Perlu
nic takiego nie ma miejsca. Musisz tylko przypisać zmiennej wartość,
a jeżeli nie została wcześniej stworzona to Perl to właśnie zrobi.
Zmienne musisz zadeklarować poprzedzając jej nazwę znakiem dolara ( $
). Oto przykład deklaracji zmiennej:
$zmienna = "Witaj!";
Taka konstrukcja może być umieszczona w dowolnym
miejscu programu. Powoduje przypisanie do zmiennej "zmienna"
wartości. Jeżeli zmienna nie została wcześniej stworzona Perl zrobi
to teraz. Jak widzisz przypisanie wartości tekstowej musi odbywać się
w cudzysłowach. A samo przypisanie następuje za pomocą znaku równości
( = ).
Teraz jeżeli chcesz wyświetlić wartość ziemnej
piszesz:
print $zmienna;
Perl jest bardzo elastycznym językiem także możesz
napisać też:
print "Wartość zmiennej to: $zmienna\n";
albo:
print "Wartość zmiennej to: " . $zmienna;
W pierwszym wypadku w miejsce zmiennej zostanie
wstawiona jej wartość. W drugim przypadku następuje zakończenie
tekstu znakiem " a później znak kropki ( . ) działa jak łącznik,
czyli do wyświetlanego tekstu dołącza wartość zmiennej. Ja jednak
preferuje pierwszy sposób - jest prostszy.
Oczywiście zamiast tekstu możesz także deklarować
liczby. W takim jednak wypadku opuszczasz cudzysłowy:
$zmienna = 1;
Muszę jeszcze wyjaśnić, że tak jak w C++ Perl odróżnia
wielkość liter więc zmienna $Zmienna oraz $zmienna to nie to samo!
Ten błąd jest często popełniany przez początkujących programistów.
Tablice
Tablice tak jak w innych językach umożliwiają
gromadzenie danych. Deklaruje się je nie poprzez znak $ ale znak
"małpy" @. Oto prosty przykład:
@tablica = ("Jasio", "Kuba", "Józek");
Tym samym stworzyliśmy tablice składającą się z 3
elementów. Ah, byłbym zapomniał - zamiast znaków " możesz używać
także apostrofów '. Dla Perla nie ma to większego znaczenia. Jednak
pisząc:
print 'Zmienna ma wartość: $zmienna';
W miejsce nie zostanie już wstawiona wartość zmiennej
tylko po prostu zostanie wyświetlony napis:
Zmienna ma wartość: $zmienna
No, ale powróćmy do naszych tablic. Jeżeli chcesz
poznać, co kryje się za danym elementem używasz nawiasów klamrowych.
Oto przykładzik:
print @tablica[0];
W tym wypadku na ekranie wyświetlone zostanie imię
Jasio. W programowaniu w ogóle pierwszy element tablicy oznaczony jest
cyfrą 0, drugi - 1, itd.
Jeżeli napiszesz w ten sposób:
print @tablica;
Na ekranie pojawi się cała tablica, czyli wszystkie
elementy razem: JasioKubaJózek. Jednak Perl udostępnia fajną funkcję,
która umożliwia rozdzielenie poszczególnych elementów. Ta funkcja to
join. Pozwala ona rozdzielenie elementów jakimkolwiek znakiem:
print join(", ", @tablica);
W takim wypadku na ekranie pojawi się: Jasio, Kuba, Józek.
W bardzo prosty sposób można dodać lub usunąć jakiś
element tablicy. Dodawanie realizowane jest za pomocą komendy push. Jeżeli
tablicy nie będzie to Perl ją stworzy i doda element. Oto kod:
push(@tablica, "Adam");
Usuwanie jest równie proste. Jest jednak jedno
"ale". Usuwać można jedynie ostatni element tablicy. A umożliwia
to funkcja pop.
@tablica = ("Jan", "Adam", "Kuba");
pop(@tablica);
print @tablica;
W powyższym przypadku usunięty zostanie element
"Kuba".
Tablice asocjacyjne
Ten typ tablic jest o wiele łatwiejsze do zapamiętania.
Bowiem, aby odwołać się do poszczególnych elementów nie musisz w
nawiasach klamrowych pisać numeru elementu, ale jedynie tzw. klucz. I
te tablice nie są deklarowane przy użyciu znaku małpa ( @ ).
$TABLICA{'samochod'} = "Opel";
$TABLICA{'posilek'} = "Hamburger";
Zwróć uwagę. W nawiasach klamrowych wpisane są
klucze. Następnie do podanych kluczy przypisywane są wartości. Tak więc
żeby wyświetlić element "samochod" piszesz:
print $TABLICA{'samochod'};
W rezultacie na ekranie pojawi się napis "Opel".
CDN...
Wyszukiwarka
Podobne podstrony:
Encyklopedia Skladnikow Naturalnychskładnia w 8skladniaskładnia w 1składnia w 7Wystarczą trzy składniki, by stworzyć miksturę o silnym działaniu przeciwnowotworowymskładnikiFunkcjonalne składniki żywnościSkladniki blon lipidyFizyka atomowa i jądrowa elementarna rzecz o elementarnych składnikach materiiZapotrzebowanie organizmu na składniki odżywcze, mineralne, witaminy i wodę1Badanie składników kwasów nukleinowych 11 pdfWFiIS 10 Analiza skladniowawięcej podobnych podstron