Eval ()'d代码在xx行


eval()'d code on line xx

我有这个代码,我想把get(title)转换为变量,它的正确工作,例如我有变量'news, sport, program ',我的问题是,当有人改变标题="news"到标题=new,我没有新的变量,我如何控制它,当用户改变标题;这将出现一个错误,变量undefined和eval()'d代码在xx行错误

if(isset($_GET['title']))
    $title=stripslashes($_GET['title']);
else
   $title="news";
$trimed=trim(strtolower($title));
$variable="$".str_replace(" ","_",$trimed);
$title=eval('return '.$variable.';');  
if(!isset($title))
    $title=$$title;

谢谢你的帮助

您可以使用${}语法并替换:

$title = eval('return '. $variable.';');  

:

$title = ${'return '. $variable};  

就像这样做:

$nameOfVar = 'return' . $variable;
$title = $nameOfVar;