]> Dogcows Code - chaz/p5-CGI-Ex/blob - samples/memory_template.pl
CGI::Ex 2.04
[chaz/p5-CGI-Ex] / samples / memory_template.pl
1 #!/usr/bin/perl -w
2
3 my $swap = {
4 one => "ONE",
5 two => "TWO",
6 three => "THREE",
7 a_var => "a",
8 hash => {a => 1, b => 2},
9 code => sub {"($_[0])"},
10 };
11
12 my $txt = "[% one %][% two %][% three %][% hash.keys.join %] [% code(one).length %] [% hash.\$a_var %]\n";
13 #$txt = hello2000();
14
15 ###----------------------------------------------------------------###
16
17 my $module;
18 if (! fork) {
19 $module = 'CGI::Ex::Template';
20 $0 = "perl $module";
21 } elsif (! fork) {
22 $module = 'Template';
23 $0 = "perl $module";
24 }
25
26 if ($module) {
27 my $pm = "$module.pm";
28 $pm =~ s|::|/|g;
29 require $pm;
30
31 my $t = $module->new(ABSOLUTE => 1);
32 my $out = '';
33 $t->process(\$txt, $swap, \$out);
34 print $out;
35 }
36
37 sleep 15; # go and check the 'ps fauwx|grep perl'
38
39
40 ###----------------------------------------------------------------###
41
42 sub hello2000 {
43 my $hello2000 = "<html><head><title>[% title %]</title></head><body>
44 [% array = [ \"Hello\", \"World\", \"2000\", \"Hello\", \"World\", \"2000\" ] %]
45 [% sorted = array.sort %]
46 [% multi = [ sorted, sorted, sorted, sorted, sorted ] %]
47 <table>
48 [% FOREACH row = multi %]
49 <tr bgcolor=\"[% loop.count % 2 ? 'gray' : 'white' %]\">
50 [% FOREACH col = row %]
51 <td align=\"center\"><font size=\"+1\">[% col %]</font></td>
52 [% END %]
53 </tr>
54 [% END %]
55 </table>
56 [% param = integer %]
57 [% FOREACH i = [ 1 .. 10 ] %]
58 [% var = i + param %]"
59 .("\n [%var%] Hello World Hello World Hello World Hello World Hello World Hello World Hello World Hello World Hello World Hello World <br/>"x20)."
60 [% END %]
61 </body></html>
62 ";
63 }
This page took 0.037004 seconds and 4 git commands to generate.