Una dintre cele mai frecvente probleme cu care se confruntă Web-programator este separarea logicii de achiziție a datelor din formatul de prezentare a datelor. Pentru a rezolva această problemă folosesc adesea șabloane HTML-document care lucrează cu programe de date completate. Acest lucru va permite să machetați paginile unei alte persoane, sau pentru a schimba aspectul paginii, fără a schimba programul în sine.
CPAN oferă programator cu o gamă de diferite instrumente pentru a lucra cu șabloane. Printre acestea: HTML :: Template. Text :: Template. set de instrumente de șabloane. De obicei, tehnica de lucru cu toate aceste module este aceeași. Programatorul creează un obiect care indică șablonul dorit, apoi a format un set de date pentru a popula șablon și șablonul se face pentru a se umple, iar rezultatul acestei înapoi sub formă de-a gata de pagini HTML. Să aruncăm o privire mai atentă la modulul HTML :: Template.
HTML :: Template permite, de asemenea, programator pentru a controla lucrul cu șabloane. De exemplu, atunci când se utilizează modulul în combinație cu mod_perl puteți utiliza șabloane parsate de cache și de a folosi rezultatele în diferite script-uri. În plus față de cache programator poate defini filtre care vor face procesarea textului generat. Toți parametrii șablonului sunt specificate atunci când creați un obiect care descrie șablonul.
Crearea unui obiect
Aici este un exemplu de creare a unui obiect dintr-un șablon situat în template.tmpl fișier. Astfel, se specifică faptul că numele șablon sunt sensibile la litere:
În cazul în care sistemul este setat variabila de mediu $ HTML_TEMPLATE_ROOT. iar șablonul este setat numele de fișier relativ, atunci numele va fi adăugată la valoarea de $ HTML_TEMPLATE_ROOT.
obținerea de rezultate
Pentru șablonul completat, pur și simplu apel la o funcție de ieșire obiectul dorit. Aceasta returnează textul generat. În acest caz, șablonul nu schimbă starea obiectului.
Pentru că de foarte multe ori rezultatul lucrării este înregistrată în fișierul, în scopul de a reduce sarcina, pe care îl utilizați parametrul print_to poate trece o funcție de descriptor de fișier de ieșire, care va fi eliberarea rezultatelor. De exemplu, ca aceasta:
introducerea variabilelor
Pentru a introduce date în șablonul pe care trebuie să-l umple cu param funcția. funcție hash PARAM transmis date ca o cheie => valoare. Pentru structuri de date complexe, cum ar fi buclele imbricate, valoarea poate fi link-uri către alte liste și semnături. Aici este un exemplu simplu de utilizare a modulului:
Pentru a utiliza variabila șablon numit VARNAME folosite pentru constructii date 1
La polul opus, în acțiune tag
Funcția param poate fi de asemenea utilizată pentru a obține valoarea parametrului menționat. Pentru a face acest lucru, pur și simplu apelați funcția cu numele pe care îl doriți.
operator de ciclu
Important tag-ul este o etichetă care indică ciclul. Ea are sintaxa este următoarea:
Dacă vom scrie în șablonul nostru ca acest design
script-ul va umple șablonul de date:
obținem următoarea ieșire (a generat doar o parte a șablonului):
Este important să ne amintim că sunt utilizate doar în variabilele de documente din interiorul buclei. Pentru a efectua conectarea la un extern (în raport cu ciclul) variabile, trebuie să utilizați parametrul global_vars la crearea unui obiect.
alți operatori
Modulul vă permite de asemenea să includă alte șabloane un șablon care vă ajută să utilizați o parte repetitive în diferite documente. Pentru a activa fișierul filename.tmpl folosit pentru constructii
concluzie
Pentru mai multe informații despre configurarea setărilor de ieșire și caracteristici, a se vedea rezultatele paginii de fundal HTML :: Template.
Pe celelalte module funcționează cu template-uri vor fi discutate în edițiile viitoare. Fișierele cu mostre de cod poate fi descărcat ca un ZIP-fișier.