public function evaluate($content, array $contentVariables = array())
{
$tempFileName = tempnam("/tmp", "foo");
$fp = fopen($tempFileName, "w");
fwrite($fp, $content);
// @todo: why not use eval()?
ob_start();
extract($contentVariables);
require $tempFileName;
$result = ob_get_clean();
fclose($fp);
unlink($tempFileName);
return $result;
}