in reply to resolved: Converting code to use DATA filehandle instead of external templates
(Update, per haoess below)
Actually, you can also use the scalarref or arrayref options with DATA, such as,$ cat /tmp/html-data.pl #!/usr/bin/perl use strict; use warnings; use HTML::Template; use File::Basename; my($script, $path) = fileparse($0); # the use of load_page() is intentional my $template = load_page(\*DATA); $template->param( script => $script, path => $path, pid => $$, ); print $template->output; sub load_page { my $fh = shift; HTML::Template->new(filehandle => $fh); } __DATA__ Hi, I'm script <tmpl_var name=script>, located at <tmpl_var name=path> running with process id <tmpl_var name=pid> $ perl /tmp/html-data.pl Hi, I'm script html-data.pl, located at /tmp/ running with process id 4291
Or,my $template = load_page([<DATA>]); sub load_page { my $stuff = shift; HTML::Template->new(arrayref => $stuff); }
local $/ = undef; my $template = load_page(\<DATA>); sub load_page { my $stuff = shift; HTML::Template->new(scalarref => $stuff); }
Open source softwares? Share and enjoy. Make profit from them if you can. Yet, share and enjoy!
In Section
Seekers of Perl Wisdom