Munka sablonok, használjunk HTML-sablont és egy cgi-script

Az egyik leggyakoribb problémák Web-programozó szétválasztása adatgyűjtő logikát adatok bemutatása formátumban. A probléma megoldására gyakran használnak HTML dokumentum sablonokat adatokkal dolgoznak tele programokkal. Ez lehetővé teszi, hogy az elrendezés oldalak egy másik személy, vagy megváltoztatni a megjelenését az oldal megváltoztatása nélkül a program maga.

CPAN biztosít a programozó a választás a különböző eszközök dolgozni sablonokat. Köztük: HTML :: Template, Text :: Template, Template Toolkit. Általában a technika dolgozik minden ilyen modul ugyanaz. A programozó létrehoz egy objektumot, amely rámutat arra, hogy a kívánt sablont, majd alakított egy adathalmazt feltölti a sablont, és a sablon végezzük megszívja magát, és ennek eredménye vissza formájában kész HTML oldal. Vessünk egy közelebbi pillantást a HTML modul :: Template.

HTML :: Template is lehetővé teszi a programozó, hogy ellenőrizzék a munkát sablonokat. Például, ha a modul együtt mod_perl segítségével caching elemzett sablonok és az eredmények különböző szkriptek. Amellett, hogy cache-a programozó szűrőket, hogy majd feldolgozása a generált szövegben. Minden sablon paraméterei vannak megadva, ha létrehoz egy objektumot, amely leírja a sablont.

objektum létrehozása

Itt egy példa létrehoz egy objektumot a sablon található template.tmpl fájl van megadva egyúttal, hogy a sablon nevét a kis- és nagybetűket:

my $ template = HTML :: sablon-> Új (filename => 'template.tmpl', case_sensitive => 1);


Ha a rendszer úgy van beállítva a környezeti változó $ HTML_TEMPLATE_ROOT, és a sablon beállítása relatív fájl nevét, majd a név bekerül az értéke $ HTML_TEMPLATE_ROOT.

Első eredmények


Az elkészült sablon, egyszerűen hívja a funkciót, hogy kiírja a kívánt objektumot. Ez visszaállítja a generált szöveget. Ebben az esetben a sablon nem változik az objektum állapotát.

Mivel nagyon gyakran a munka eredményeként került rögzítésre a fájlt, annak érdekében, hogy csökkentsék a terhelést, akkor használja print_to paraméter át függvényében kimeneti fájl leíró, melyik lesz a kiadása az eredményeket. Például így:

$ Sablon-> kimenet (print_to => * STDOUT);

behelyezése változók


Adatokat bevinni a sablont meg kell, hogy töltse meg a függvény param. PARAM hash függvény továbbított adatokat, mint egy kulcs => érték. Az összetett adatszerkezetek, mint a beágyazott hurok, az érték lehet linkeket más listák és hash-eket. Itt egy egyszerű példa az a modul:

se HTML :: Template;
# Nyissa meg a sablon fájlt
my $ template = HTML :: sablon-> Új (filename => 'test.tmpl');
# Töltse ki a sablon paraméterei
$ Sablon-> param (HOME => $ ENV, PATH => $ ENV);
# Elküldése Content-Type fejléc
print "Content-Type: text / html \ n \ n";
# Bocsát ki kész eredményt
print $ sablon-> kimenet;


Ahhoz, hogy a sablon változó nevű VARNAME építőipari . Az érték kerül a hash függvény segítségével param bevezetik ezt a címkét. Ebben az esetben megkapjuk a dokumentum nem teljesen kompatibilis a HTML. Ha aggódik a helyes szintaxis a dokumentum, az alábbi formában lehet használni, hanem ezt a címkét: . Ez ugyanúgy működik, mint az előző, de nem sérti a helyességét a HTML dokumentum. Mindkét formában belül fel lehet használni más címkéket, mint például:

„>.

Feldolgozás kimeneti változókat lehet szabályozni a címke nevű paramétert menekülni. Elfogadható értékek HTML és URL-t, így van egy karakter átalakítás nem engedélyezett ebben a kontextusban.

feltételes utasítások


Egy másik, gyakran használt szerkezet a feltétel. Ez egy formája adatok 1data 2. Ebben az esetben az adatok jelennek meg az eredmény 1, ha a változó nevű IMYA_UPRAVLYAYUSCHEGO_PARAMETRA lesz valódi érték, különben az eredmény nem lesz 2. Adatok modul lehetővé teszi a használatát csak az egyik ágon feltételek nélkül, . Kitöltése változó fordul elő a szokásos módon.

Szemben a tag akció egy tag . Ez a szintaxis adat és beilleszti az adatokat csak akkor, ha a változó IMYA_UPRAVLYAYUSCHEGO_PARAMETRA egy hamis értéket, vagy nem határozza meg.

PARAM függvény is használható, hogy megkapjuk a értékét a paraméter. Ehhez egyszerűen hívja a funkciót a kívánt nevet.

ciklus operátor


Fontos címke egy címkét, amely a ciklust. Ez szintaxis a következő: Ismételt rész. Részben LOOP_NAME kell hivatkozni, hogy egy listát az adatok. Ez a lista tárolható és egyszerűen értékek és linkek más adatok hash, amely lehetővé teszi, hogy építsenek beágyazott struktúra, mint a következő példa.

Ha írunk mi sablon ilyen kialakítás








Az Ön neve: összesen:

Kapcsolódó cikkek