【问题标题】:PHP serialize, array structurePHP序列化,数组结构
【发布时间】:2014-06-25 10:37:23
【问题描述】:

我在将一些 JSON 序列化为我需要的格式以存储在数据库中时遇到问题。

我想要这样的结构(所以没有键):

a:10:{s:8:"location";s:5:"London";s:6:"_token";s:40:"5969e8f11f20b12afc6dfc7b9ce4a6acfc44544d";s:8:"producttype";s:6:"rental";}

但是当我这样做时:

$array[] = $postData['queryData'];
$parameters = serialize($array);

我得到一个带键的数组:

a:1:{i:0;s:321:"{"location":"London","_token":"140e8a2f50db0e62f42cfd27662b3b746aa7bf22","producttype":"rental"}

如果我这样做:

  $parameters = serialize($postData['queryData']);

我只得到一个字符串:

s:321:"{"location":"London","_token":"f7aad7cc4d1e1f8b999970c820001a17a3e6cfee","saletype":"rental"};

【问题讨论】:

    标签: php json serialization


    【解决方案1】:

    $postData['queryData'] 显然是一个 JSON 字符串。您正在序列化一个包含 JSON 数据的 PHP 字符串。如果要序列化 ​​PHP 数组结构,则必须在序列化之前将 JSON 字符串解码为 PHP 数组:

    serialize(json_decode($postData['queryData'], true))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-08
      • 2011-08-11
      • 2012-12-27
      • 2012-06-10
      相关资源
      最近更新 更多