这个JSON变体是什么?

这个JSON变体是什么?,json,Json,我得到了一些看起来像JSON的数据,但是数据类型和字符串长度不同 Data=a2:{i:0;a:2:{s:4:"user";s:7:"example";s:5:"email";s:19:"example@example.com";}i:1;a:2:{s:4:"user";s:8:"example2";s:5:"email";s:20:"example2@example.com";}} 这不是JSON。JSON没有变化。这似乎是一个序列化字符串。这与PHP的序列化方式非常接近,但是开始应该是a:

我得到了一些看起来像JSON的数据,但是数据类型和字符串长度不同

Data=a2:{i:0;a:2:{s:4:"user";s:7:"example";s:5:"email";s:19:"example@example.com";}i:1;a:2:{s:4:"user";s:8:"example2";s:5:"email";s:20:"example2@example.com";}}

这不是JSON。JSON没有变化。这似乎是一个序列化字符串。这与PHP的序列化方式非常接近,但是开始应该是
a:2
,而不是
Data=a2
。不过,它可以被其他语言序列化。如果您知道源语言,它应该提供一些方法将其反序列化为该语言的数据结构。

它可能与json的唯一联系是它使用类似于
{
等的东西

这看起来像一个序列化字符串:

根据将要发生的事情、它来自何处等,您可以找到它是什么/需要什么。它可以是一个简单的对象,在其中调用您的语言的“serialize”函数,然后将其转换为文本字符串以提供给某个数据库

有关此php函数的示例,请参见:

可能的情况是,您有一个PHP应用程序可以从数据库中读取序列化数据,而另一个应用程序(如java)正在尝试(预?)使用某些对象填充此数据库。现在java不知道如何为PHP序列化,但它可以包含一段由开发人员复制/粘贴的文本。
我并不是说它确实是这样,但由于它看起来有点像php序列化代码,但赋值不是这样,它可能是两者的某种形式的组合。如果没有更多信息,这是不可能的。

我认为即使忽略了
:[0-9],这也不是正确的JSON
它的一部分。看起来无效。整个东西应该是一个对象还是一个字符串?@Renan它当然不是。但它确实看起来像是有人拿走了JSON并向它扔了几个扩展。JSON没有官方认可的变体。没有任何东西能阻止任何人拿走JSON并在它的基础上创建另一种数据格式。我想所有这些都是一种变化。