无法反序列化数组

时间:2013-12-04 16:46:40

标签: php arrays caching serialization memcached

我想缓存一个大约3.5k元素的关联数组(使用Memcache) 我只是将数据存储到var中并调用serialize($ var)。 即使我试着

echo var_dump(serialize($var))

我收到错误:

  unserialize() [<a href='function.unserialize'>function.unserialize</a>]: Error at offset 47 of 868456

序列化数据如下所示:()

array(2) {
  ["value"]=>
  array(3581) {
    [0]=>
    array {
      [0]=>
      float(946854000000)
      [1]=>
      float(30.6)
      [2]=>
      float(29.1)
      [3]=>
      float(28.8)
      [4]=>
      float(31.5)
      [5]=>
      float(138500)
    }
    [1]=>
    array {
      [0]=>
      float(946940400000)
      [1]=>
      float(29.45)
      [2]=>
      float(28.2)
      [3]=>
      float(27.5)
      [4]=>
      float(29.45)
      [5]=>
      float(187000)
    }

(我需要存储约3-6MB)
我的第一个猜测是 - 在php.ini中设置了一个限制,但我改进了每个内存限制并仍然得到错误,但似乎序列化存在问题。

我重写了这篇文章:unserialize() [function.unserialize]: Error at offset
我很遗憾无法尝试这些解决方案的想法,因为我有一个阵列 我想问题可能在于assoc数组的双引号。也许是因为&gt; [“values”]&lt;而不可序列化的?我应该试图逃避键的双引号吗?

0 个答案:

没有答案