第xx行的eval()代码

时间:2011-10-24 10:38:30

标签: php

我有这个代码,我想将get(title)转换为变量,它正常工作,例如我有变量'news,sport,program',我的问题是当有人改变title =“news “to title = new,我没有新变量,当用户更改标题时我可以控制它; 这将出现一个错误,即变量undefined和eval()'代码在行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;

谢谢你的帮助

2 个答案:

答案 0 :(得分:0)

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

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

使用:

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

答案 1 :(得分:0)

就这样做:

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