I first saw the list of $file1, $file2, $file3... And thought "This person needs an array."; Then I saw that you had and array and were for some reason pulling the array into single variables.
If I was doing this I might attack it as such.. (not tested)...
my @user_files = <longfilename>;
unshift(@user_files, 'blank');
# skipping to the $ufile line
# Make sure $choice is numeric and
# within the range in user_files
if ( ($choice =~ /^\d+$/) &&
($choice > 0) &&
($choice <= scalar(@user_files)) ) {
file_mod($user_files[$choice], $mail_flag);
} else {
# Error condition, choice outside of range
}
In cases where you are tempted to name things foo1, foo2, foo3... you should take a second look at using an array, because it will likely serve you well. In this case you already were, but then you went awry and started making pointless variables.
Using an array makes your code more expandable, maintainable, and easier to make more robust.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.