use strict; use warnings; use HTML::Template; my $t = HTML::Template->new( filehandle => \*DATA, die_on_bad_params => 0 ); my ( $average, @fullstars, @emptystars ); $average = 3.7; # hard-coded for testing for ( 1 .. 5 ) { if ( $_ <= $average ) { push( @fullstars, 1 ); } else { push( @emptystars, 1 ) } } if ( int($average) != $average ) { $t->param( halfstar => 1 ); shift(@emptystars); } $t->param( fullstars => \@fullstars, emptystars => \@emptystars ); print $t->output(); __DATA__ <tmpl_loop name="fullstars"> <img src="fullstar"> </tmpl_loop> <tmpl_if name="halfstar"> <img src="halfstar"> </tmpl_if> <tmpl_loop name="emptystars"> <img src="emptystar"> </tmpl_loop>
Nobody says perl looks like line-noise any more
kids today don't know what line-noise IS ...
In reply to Re: while loops with two tests not working.
by Cody Pendant
in thread while loops with two tests not working.
by Eagle_f90
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |