Frunze de galben - articole - începem să lucrăm cu perl

Luați în considerare principiile de bază ale Perl, o limbă populară pentru scrierea de scripturi CGI - programe care interacționează cu un server web pentru a crea pagini web mai dinamice.







Pentru multe aplicații, dezvoltatorii folosesc alternative mai moderne, cum ar fi PHP - care includ unele dintre caracteristicile luate de la Perl - Perl, dar este încă mai bine să dezvolte abilitățile de bază de a crea script-uri CGI.

Dacă te uiți, vei descoperi că Perl este instalat pe fiecare sistem Linux și în plus poți descărca Perl pentru Windows de la activestate.com.

Perl - interpret de limbă (cum ar fi PHP), și el nu este „puternic tastat“, ceea ce înseamnă că nu trebuie să declare o variabilă înainte de a utiliza, și pentru a indica ce tip este. Puteți scrie ceva de genul:

După cum puteți vedea, fiecare expresie se termină cu un punct și virgulă, șirul este închis în apostrofuri.

Unul dintre primele lucruri de reținut, ca și în alte limbi, este că tipul de citate este important; dacă utilizați citate simple (apostrofuri), expresia din interior este tratată ca un șir de text; Dacă utilizați ghilimele duble, puteți utiliza expresii în caractere speciale și variabile. De exemplu, scrieți următorul cod:

Drept rezultat, șirul "$ a \ n" "va fi afișat.

Dacă utilizați codul

atunci o nouă linie va afișa mesajul "salut lume"

Verificați întotdeauna corectitudinea liniilor din ghilimele duble.

Cum pot rula scenariul? Dacă doriți să faceți un test simplu - utilizați Perl interactiv: deschideți fereastra de comandă și introduceți perl (pe Windows, poate fi necesar să adăugați calea către fișierul perl.exe).

Acum tastați liniile scriptului. În final, adăugați un șir gol și apoi apăsați pe Ctrl D. De obicei, trebuie să faceți ceva mai complicat, pentru aceasta scrieți scriptul într-un fișier text și salvați-l cu extensia .pl. Apoi rulați-l executând comanda

Programarea, ca regulă, include blocuri de date sau comenzi care sunt utilizate în interiorul buclelor, iar Perl nu face excepție. De fapt, a fost proiectat pentru a lucra cu fișiere text, care este, citirea informațiilor stocate în ele sau intrarea standard (setat pe tastatura) sau din lista de fișiere de pe linia de comandă. Iată un simplu exemplu de script:

Salvați fișierul ca test.pl și executați-l utilizând următoarea comandă:

Al doilea test.pl poate fi înlocuit cu numele oricărui alt fișier text. Privind scenariul, puteți vedea blocurile de comenzi din buclă, închise în bretele.







Pentru a specifica condițiile în buclă, folosiți pictogramele <>. Instrucțiunea specială "<>„Înseamnă că intrarea standard este utilizat, și o variabilă specială“ $ _ „indică linia curentă de intrare. Astfel, script-ul citește o linie de la intrarea standard și afișează. Dacă tastați doar perl test.pl, el va aștepta până să câștige unele șir și apoi imprimați-l, iar acest lucru va continua până când apăsați Ctrl D, ceea ce va însemna sfârșitul scenariului.

De asemenea, trebuie să utilizați paranteze în expresiile if - parantezele sunt utilizate pentru condiții și parantezele curbate pentru blocul de comenzi. În următoarea bucată de cod, folosim un alt lucru foarte comun în Perl - o comparație.

"compară dacă variabilele se potrivesc și operatorul"!

"verificați nepotrivirea. Adăugați următoarele linii la sfârșitul scriptului și executați-l cu comanda test.pl perl test.pl:

Rezultatul va fi de două rânduri de cod și înainte de fiecare ceva ca acest mesaj: "Fred este aici, linia 7."

Acum avem un script simplu care caută cuvântul "Fred" în dosar, dar de ce îl putem folosi?

De exemplu, este ușor să îl încorporați într-un script CGI util, de exemplu, pentru a găsi un rând în tabelul de date.

Foarte des, pe site-uri simple, lucrul cu bazele de date este deja implementat. Dar dacă aveți deja date în format Excel sau similar, le puteți salva în format CSV (Valorile separate în comă - date separate prin virgulă) sau într-un alt format de text.

Apoi le încărcați pe site-ul dvs. web, utilizați un script Perl simplu pentru a extrage rândurile în funcție de solicitarea utilizatorului - pentru aceasta folosim exemplul nostru.

Salvați fișierul în format CSV și încărcați-l pe server în același director ca scriptul nostru. Vom crea un script pentru a prelua un șir care conține datele persoanei care urmează să fie găsită. Scenariul de la capăt conține codul complet.

Mai întâi trimitem un antet pentru a spune browserului web că textul simplu este trimis; ca în alte antete, trebuie să faceți acest lucru din noua linie și apoi să adăugați o linie goală care arată sfârșitul antetului și începutul conținutului paginii web.

Atunci comanda deschisă citește un fișier amplasat în același director ca și scriptul, fișierul CSV pe care l-am creat în Excel; numele de "CONTACT" este folosit ca identificator de fișier. Vom folosi în buclă pentru a citi fișierul. Deoarece toate datele sunt separate de virgulă, le putem scrie la variabile diferite.

Prima comandă următoare, dacă este necesară pentru a sări peste iterația următoare a buclă; suntem convinși că nu vom afișa o linie care conține titlul pe care Excel îl adaugă fișierului CSV. A doua comandă este folosită pentru mai multe lucruri; Există o comparație cu care ne-am cunoscut mai devreme, dar la sfârșit vom folosi litera i mică, ceea ce îl face pe Perl să ignore blocul.

Al doilea lucru pe care l-am adăugat este o matrice asociativă; Aceasta este o matrice simplă constând din numele fiecărui element.

Această parte este verificată pentru o potrivire și toate liniile sunt sărite, cu excepția liniilor care se potrivesc, scriptul iese, afișând toate contactele pe care le găsește.

Acum, tot ce trebuie să faceți este să actualizați datele din când în când. În viitor, puteți schimba tipul de date în text / html și puteți utiliza etichete HTML în comenzile de ieșire. Sau puteți crea fișiere temporare și apoi utilizați comenzile Perl pentru a găsi și înlocui și scrie datele la aceste fișiere temporare pentru utilizare ulterioară.

Citirea unei liste de contacte dintr-un fișier CSV folosind Perl







Articole similare

Trimiteți-le prietenilor: