将字符串转换为PHP关联数组

时间:2013-04-24 13:06:42

标签: php arrays string converter associative-array

如何转换此字符串

$str = "array('3'=>'wwm','1'=>'wom')";

到真正的php关联数组...

3 个答案:

答案 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”,并在将其拉出时反序列化。您正在存储一种非常不寻常的格式。