如何转换此字符串
$str = "array('3'=>'wwm','1'=>'wom')";
到真正的php关联数组...
答案 0 :(得分:5)
这很简单,但真的不安全
$str = "array('3'=>'www.tension.com','1'=>'www.seomeuo.com','requestedBy'=>'1')";
eval("\$array = $str;");
你永远不应该使用这种方法,还有另外一种方法:serialize()
和unserialize()
答案 1 :(得分:2)
您可以使用eval()
功能:
$str = "array('3'=>'wwm','1'=>'wom')";
eval("\$a=$str;");
var_dump($a);
但是,在您的代码中使用eval()
被认为是有风险的,您不应该使用它。请尝试使用serialize()
,unserialize()
。
答案 2 :(得分:1)
首先。不要使用eval。这是邪恶的! http://af-design.com/blog/2010/10/20/phps-eval-is-evil/
其次。简单的解决方案是不使用此字符串,而只是在将其放入数据库时使用“serialize”,并在将其拉出时反序列化。您正在存储一种非常不寻常的格式。