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

Oll*_*lie -1 php arrays

可能重复:反
序列化问题

我有一个字符串形式:

a:16:{i:0;s:3:"696";i:1;s:3:"698";i:2;s:3:"690";}"
Run Code Online (Sandbox Code Playgroud)

我正在考虑将其转回数组,以便它将遵循:

array(16) {
  0 => 696,
  1 => 698,
  2 => 690
}
Run Code Online (Sandbox Code Playgroud)

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

谢谢

Jvd*_*erg 6

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

$array = unserialize($value);
Run Code Online (Sandbox Code Playgroud)

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

更新

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

考虑:

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

$s = serialize($a);
Run Code Online (Sandbox Code Playgroud)

将导致:

 "a:3:{i:0;s:3:"696";i:1;s:3:"698";i:2;s:3:"690";}"
Run Code Online (Sandbox Code Playgroud)