eval

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

説明

void eval(string code_str);

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

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

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

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

  1 
  2  <?php
  3  $string = 'cup';
  4  $name = 'coffee';
  5  $str = 'This is a $string with my $name in it.<br>';
  6  echo $str;
  7  eval( "\$str = \"$str\";" );
  8  echo $str;
  9  ?>
 10        

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