Difference between revisions of "Perl eval"
From Teknologisk videncenter
m (→Throwing an exception) |
m (→Example) |
||
Line 40: | Line 40: | ||
} | } | ||
</source> | </source> | ||
+ | Yields | ||
+ | <pre> | ||
+ | |||
+ | Help - I'm dying | ||
+ | Perl Script.: C:\Programmer\Perl Express\Debug\temp6.cgi | ||
+ | Perl verson.: 5.010001 | ||
+ | Error #.....: Illegal division by zero at C:\Programmer\Perl Express\Debug\temp6.cgi line 5. | ||
+ | </pre> |
Latest revision as of 12:40, 27 June 2010
Perl eval can be used as try and catch exception handling.
eval
{
# try
};
if($@)
{
# catch
}
Throwing an exception
eval
{
# try
die "Exception text to be catched";
};
if($@)
{
# catch
}
Example
#!/usr/bin/perl
eval
{
my $res = 1/0;
};
if($@)
{
print("Help - I'm dying\n");
print(" Perl Script.: $0\n");
print(" Perl verson.: $]\n");
print(" Error #.....: ",$@,"\n");
exit;
}
Yields
Help - I'm dying Perl Script.: C:\Programmer\Perl Express\Debug\temp6.cgi Perl verson.: 5.010001 Error #.....: Illegal division by zero at C:\Programmer\Perl Express\Debug\temp6.cgi line 5.