试图从$this->;中获取价值;通过代码点火器中的另一个变量值


Trying to get value from $this-> through another variable value in codeigniter

好的,所以我正在尝试从$this->lang->line('test'); 中获取值

我得到了另一个名为$try的变量,它包含值$this->lang->line('test');

我可以成功地让它打印出名称$this->lang->line('test');,但我无法让它打印该变量的值。

当尝试使用eval()$$时,我只得到一个undefined variable错误。但我已经仔细检查过了,成功地完成了echo $this->lang->line('test');

那么,有人知道如何解决这个问题吗?

以下是基于您的评论得出的答案。

当您调用eval时,它会计算作为PHP代码给出的字符串。由于您调用$newVar = eval("echo $test;");,因此值为标准输出的echo

如手册所述eval的返回值,

eval()返回NULL,除非在评估的代码中调用return在这种情况下,返回传递给return的值。如果有解析计算代码中的错误,eval()返回FALSE和以下代码正常继续。

如果要从eval ed字符串中捕获值而不是回显它,请将echo替换为return

示例:

$newVar = eval("return $test;");
echo $newVar;