Last Update 2008/05/18
与えられたPerlのプログラムを解釈・実行します。
戻り値1 = eval 式1
戻り値1
最後に評価した式、またはreturnによって返される値
式1
解釈・実行されるPerlスクリプトを結果として返す式
戻り値1 = eval ブロック1
戻り値1
最後に評価した式、またはreturnによって返される値
ブロック1
解釈・実行されるPerlスクリプトのブロック
エラーが発生した場合は、$@にエラーメッセージが格納される
エラーが発生した場合は、$@にエラーメッセージが格納される
(例)
# 式を使用
$s_eval = 'print' . ' ' . '"test\n";';
eval 'for($i=0;$i<3;$i++){' . $s_eval . '}';
# ブロックを使用
eval
{
my $i;
for($i=0;$i<3;$i++)
{
# 除算エラーが発生しても終了はしない
print 10 / $i . "\n";
}
};
# エラーの内容が$@に格納される
print "エラー内容 : $@\n";
実行結果
test
test
test
エラー内容 : Illegal division by zero at /****/****/****/test.pl line 11.