PHP将字符串转换成数组使用序列化和反序列化
我有一个数组,看起来像:PHP将字符串转换成数组使用序列化和反序列化
Array ([0] => Array ([names] => somename [rating] => 10) [1...]=>...)
而且我通过这种方式将他带到一个字符串保存在他的数据库:
$array_string=mysql_escape_string(serialize($list));
然后我把他推入数据库。
然后,我采取这一阵列(串在数据库中)在我的网页,和我做反序列化是这样的:
$list= unserialize($query_row['list']);
然后我这样转换这个字符串到数组:
$arr=explode("|", $list);
现在我有一个问题,当我通过var_dump($ arr)进行检查时;打印我:
array(1){[0] => string(422)“Array([0] => Array([names] => e [rating] => 5)[1] =>数组([names] => d [rating] => 4)[2] =>数组([names] => c [rating] => 3)[3] => Array([names] => b [rating ] => 2)[4] => Array([names] => a [rating] => 1))“}
我不知道如何转换数组中的字符串(string(422 ))到数组中。 任何人有想法? 谢谢。
如果您的目标是在反序列化之后以数组的形式返回数据,那么您不必爆炸,只需通过反序列化,它就会以数组的形式返回到其原始状态。
引述PHP文件:The converted value is returned, and can be a boolean, integer, float, string, array or object.
那么简单,
$list = unserialize($serialized_array);
$列表将是在这种情况下一个数组,您可以使用,就像它是序列化之前。
不知道谁低估了我的答案,但我再次编辑它,这是我的糟糕,因为我混合反序列化和json_decode之间。 – Ali 2014-10-19 16:38:54
这不是我低调,你是对的 - 但这不是我问的。看看我的帖子中的大胆亮点。 – 2014-10-19 16:54:36
正如您在[其他问题]的意见中所建议的(http://stackoverflow.com/questions/26449973/convert-array-to-string-and-get-it-back-to-array-in-php ),请提供[Short,Self Contained,Correct Example](http://sscce.org/)以解决您的问题。没人理解你在说什么。 – georg 2014-10-19 16:34:13