Na, Du hattest doch letztens die Referenzen am Wickel. Dann machen wir doch gleich einmal ein Beispiel für Modernes Perl und nehmen statt der umständlichen print()-Ausgabe doch gleich eine richtige Templating Engine:
#!/usr/bin/perl
use strict;
use warnings;
use HTML::Template;
# Lese Handler DATA
# übergebe Scalar Referenz
my $data = do{ local $/ = undef; <DATA> };
# TE Instanz erstellen
my $template = HTML::Template->new( scalarref => \$data );
# Daten erzeugen
my @slice = ();
foreach my $num( 0..127 ){
push @slice, {
ord => $num,
chr => chr($num)
};
}
# Daten an TE Instanz übergeben
# als Referenz auf das Array
$template->param(chars => \@slice);
# Template rendern und ausgeben
print $template->output();
# Template unterhalb DATA Token
__DATA__
<table>
<thead>
<tr>
<th> ASCII Numerisch </th>
<th> Zeichen </th>
</tr>
</thead>
<tbody>
<TMPL_LOOP name="chars">
<tr>
<td> <TMPL_VAR name="ord"> </td>
<td> <TMPL_VAR name="chr"> </td>
</tr>
</TMPL_LOOP>
</tbody>
</table>
Und das ist doch mal ein schönes Beispiel, wie man mit Perl einen ordentlichen Code schreiben kann.
Machs besser 😉
PS: Escapen nicht vergessen, das kann die TE, siehe untenstehend:
<td> <TMPL_VAR name="chr" ESCAPE=HTML> </td>