这是一个严格的个人项目,这就是我使用
eval
的原因。
目标是从包含数组的输入表单中解析字符串,并将其转换为实际数组,以便我可以
json_encode
得到结果。
$result = @eval('$array = '.$data.';return true;');
示例
$data
:数组()
问题是它返回一个错误,就好像 eval 字符串以“=”开头,我认为
eval
试图在当前范围内查找 $array
,但事先分配变量没有帮助。摆脱美元符号以及许多其他替代方案也不起作用。既然目的是json_encode
结果,那么有没有更好的方法呢?
你应该避开 $ 符号
<?php
$data=10;
$result = eval("\$array = ".$data.";return true;");
echo $array;