在第 xx 行的 eval() 代码

3
我有这段代码,我想转换get(title)到变量。它目前可以正常运行。例如我有变量'新闻,体育,节目',我的问题是当某人将title="news"更改为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个回答

1

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

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

使用:

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

0

就像这样做:

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接