מסדי נתונים / בחירת מסד הנתונים האידיאלי / הטבעת תת-רוטינות
הטבעת תת-רוטינות
נכון שePerl מאפשרת לנו להטביע כמה פרל שרק נרצה בתוך מסמכי HTML, אבל לפעמים עדיף לכתוב תת-שגרות גדולות בסוף קבצי הiphtml. הקוד שלכם יראה יותר נקי בצורה הזו. הנה דוגמא:
<HEAD><TITLE>Embedding a Subroutine</TITLE></HEAD>
<BODY>
<P>
Here's an HTML calendar for the current month:
<B><?=${ \(`cal| head -1`) }!></B>
<P>
<?=${ \( calendar_table() ) }!>//
</BODY>
</HTML>
<?
sub calendar_table {
#
# cal - unix אני עושה פה שימוש בפקודת
# dos הקוד לא יעבוד במערכות
#
my @cal = `cal`; # fill the cal array with the output of a
shelled cal command
my $return = '';
shift @cal; # junk the first line... it's not needed
$return .= "<TABLE BORDER>\n";
$return .= "<TR>";
# I dedicate the following line to my fellow Perl junkies
everywhere
$return .= join('', map { s/\W//g; "<TH>$_</TH>" }
unpack("A2A3A3A3A3A3A3", shift @cal));
$return .= "</TR>\n";
foreach ( @cal ) {
$return .= "<TR>\n";
$return .= join('', map { s/\W//g; "<TD>$_</TD>" }
unpack("A2A3A3A3A3A3A3",$_));
$return .= "</TR>\n";
}
$return .= "</TABLE>\n"; # the value of this line is returned
}
!>//
פלט התוכנית יראה כך.
אני מניח ששימוש בתת-גדולות במיוחד עלול ליצור בעיות זיכרון עקב הגודל של return$, אבל נחצה את הגשר הזה כשנגיע אליו.
עמוד הבא: מחברים את הכל >>
|