将带有键和值的字符串转换为数组

时间:2012-10-05 12:08:28

标签: php arrays

  

可能重复:
  unserialize problem

我有一个字符串形式:

a:16:{i:0;s:3:"696";i:1;s:3:"698";i:2;s:3:"690";}"

我正在考虑将其转回数组,以便它将按照以下方式进行:

array(16) {
  0 => 696,
  1 => 698,
  2 => 690
}

任何想法如何做到这一点?

由于

2 个答案:

答案 0 :(得分:6)

它看起来像一个序列化的PHP字符串,试试

$array = unserialize($value);

手动:http://php.net/manual/en/function.unserialize.php

<强>更新

该字符串包含一个缺陷,因为它需要一个包含16个元素的数组,但只有3个元素。

考虑:

$a = array (
  0 => '696',
  1 => '698',
  2 => '690'
);

$s = serialize($a);

将导致:

 "a:3:{i:0;s:3:"696";i:1;s:3:"698";i:2;s:3:"690";}"

答案 1 :(得分:1)

使用unserialize()功能。

$array = unserialize($serialized_string);