Google

NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7">

eval

(PHP 3, PHP 4 )

eval -- 文字列をPHPコードとして評価する

説明

mixed eval ( string code_str)

eval() は、code_str で与えられた文字列を PHP コードとして評価します。 中でも、データベースのテキストフィールドにコードを保存し、 後で実行するためには便利です。

eval() を使用する際、注意するべき点が いくつかあります。 パーサーが eval()の処理中に落ちないように、 渡す文字列はセミコロンで文が終了するといった有効なPHPコード である必要があります。また、code_str の 中の文字を適切にエスケープする必要があります。

eval()の中で値を与えた変数は、 この後、メインスクリプトの中でもこれらの値を維持することも 覚えておいて下さい。

return 文は、文字列の評価をただちに終了します。 PHP4では、eval()関数は FALSEを返します。さも なくば、結果の値を返すためにreturnを使用するこ とが可能です。一方、PHP3では、eval()の型は voidであり、値を何も返しません。

例 1 eval()の例 - 簡単なテキストのマージ

<?php
$string = 'cup';
$name = 'coffee';
$str = 'This is a $string with my $name in it.<br>';
echo $str;
eval ("\$str = \"$str\";");
echo $str;
?>

上の例は、以下を表示します。
This is a $string with my $name in it.
This is a cup with my coffee in it.

ティップブラウザに直接結果を出力する全てのものと同様に、出力制御関数を使用してこの関数の出力をキャプチャーし、文字列等に保存することが可能です。