Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

Totally Simple Templates

by japhy (Canon)
on Jan 24, 2001 at 06:14 UTC ( [id://53860]=sourcecode: print w/replies, xml ) Need Help??
Category: Text Processing
Author/Contact Info Jeff japhy Pinyan
CPAN ID: PINYAN
japhy@pobox.com
http://www.pobox.com/~japhy/
Description: Using my recently uploaded module, DynScalar, template woes are a thing of the past. By wrapping a closure in an object, we have beautiful Perl code expansion.
The following is an over-simplified example.
#!/usr/bin/perl

# coming to your CPAN mirror soon
# http://www.pobox.com/~japhy/modules/
use DynScalar 'newTemplate';
use strict;
use vars '$data';  # has to be package var

my $template = newTemplate {
  my $out = << "END";

Hello, <b>$data->{USER}</b>.  You've been here
$data->{COUNT} times.

<br><br>

<ul>
END

  for (@{ $data->{NODES} }) {
    $out .= qq{<li> <a href="$_->{href}">$_->{name}</a>\n};
  }

  $out .= "</ul>\n";

  $out;
};

$data = getInfo(magically_determine_user());
print HTML_page($template);

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: sourcecode [id://53860]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chilling in the Monastery: (5)
As of 2024-03-28 20:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found