LMPX.COM |
Home | Linux | Mysql | PHP | XML | ||
|
|
|||
From: Jenda Krynicky Date: Tue May 13 00:14:35 2008 Subject: Re: want to assign default value to variable I assign from split but want to know optimal way to get this done: please help!
From: Richard Lee <rich.japh@gmail.com> > while (<FILE>) { > my($file1,$file2,$file3,$file4,$file5,$file6,$file10,$file25,$file27) > = (split( /\|/, $_))[3,4,6,7,12,40,41,42,43,46,56,64] > } > > while doing above, what is the easiest way to make sure all the variable > that's being given a value is true and if not > assign something default value (such as 'default' or 'X') ? > > I was doing (after the while loop) > > $file |= 'default' > $file2 |= 'default2' > $file3 |= 'default3' > > but I stopped and thought this cannot be so repetitious > > so I didn't want to but tried( I didn't want to put them in array since > I need to use individual named variable later) > > while (<FILE>) { > my @array = (split( /\|/, $_))[3,4,6,7,12,40,41,42,43,46,56,64] > } > for (@array) { > $_ |= 'default'; > } > > but is that the best way to do this? So are the defaults the same or not? If they are you can do something like while (<FILE>) { my($file1,$file2,$file3,$file4,$file5,$file6,$file10,$file25,$file27) = (split( /\|/, $_))[3,4,6,7,12,40,41,42,43,46,56,64]; for($file1,$file2,$file3,$file4,$file5,$file6,$file10,$file25,$file27) { $_ |= 'default'; } } Actually this seems to work as well: while (<FILE>) { $_ |= 'default' for (my($file1,$file2,$file3,$file4,$file5,$file6,$file10,$file25,$file27) = (split( /\|/, $_))[3,4,6,7,12,40,41,42,43,46,56,64]); # and some code using $file1, ... } If you want a different default for each field, you can't IMHO do better than the original code. Jenda ===== Jenda@Krynicky.cz === http://Jenda.Krynicky.cz ===== When it comes to wine, women and song, wizards are allowed to get drunk and croon as much as they like. -- Terry Pratchett in Sourcery
| Navigate in group perl.beginners at sever nntp.perl.org | |
| Previous | Next |
| © No Copyright You are free to use Anything |
Site Maintained by PHP Developer
Powered By PHP Consultants |