perlintro#Perl variable types, Writing subroutines
#!/usr/bin/perl --
##
##
## perltidy -olq -csc -csci=10 -cscl="sub : BEGIN END if " -otr -opr
+-ce -nibc -i=4 -pt=0 "-nsak=*"
#!/usr/bin/perl --
use strict;
use warnings;
Main( @ARGV );
exit( 0 );
sub Main {
print join "\n", pageLinksHtml( 170, 11, 10, 5 );
}
sub pageNumbers {
return
{ first => 1 }, 9, 10,
{ curr => 11 }, 12, 13,
{ last => 17 },
;
} ## end sub pageNumbers
sub pageLinksHtml {
my( $total, $curr, $rate, $links ) = @_;
my @nums = pageNumbers( $total, $curr, $rate, $links );
for my $num ( @nums ) {
if( ref $num ) {
if( my $first = $$num{first} ) {
$num = sprintf '<li><a href="?;page=%d">{%d</a>...</li
+>',
$first, $first;
} elsif( my $curr = $$num{curr} ) {
$num = sprintf '<li><b>%d</b></li>', $curr;
} elsif( my $last = $$num{last} ) {
$num = sprintf '<li>...<a href="?;page=%d">%d}</a></li
+>',
$last, $last;
}
} else {
$num = sprintf '<li><a href="?;page=%d">%d</a></li>', $num
+, $num;
}
}
return '<ul>', @nums, '</ul>';
} ## end sub pageLinksHtml
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.