1

我在我的数据库中的项目下有这个值:

a:1:{i:0;a:9:{s:12:"model_number";s:10:"TT1-W";s:5:"price";s:4:"3810";s: 10:"unit_price";d:3135.6300000000001091393642127513885498046875;s:8:"id_price";d:3810;s:9:"sales_tax";d:290.3700000000000045474735088646411895751953125;s:5:"sales";d:3084.6300000000001091393642127513885498046875;s:7: "服务";s:2:"51";s:7:"货运";s:3:"384";s:13:"co_cat";s:3:"X4";}}

使其更易于阅读:

a:1:
    {
    i:0;
    a:9:
        {
        s:12:"model_number";
        s:10:"TT1-W";
        s:5:"price";
        s:4:"3810";
        s:10:"unit_price";
        d:3135.6300000000001091393642127513885498046875;
        s:8:"id_price";
        d:3810;
        s:9:"sales_tax";
        d:290.3700000000000045474735088646411895751953125;
        s:5:"sales";
        d:3084.6300000000001091393642127513885498046875;
        s:7:"service";
        s:2:"51";
        s:7:"freight";
        s:3:"384";
        s:13:"co_cat";
        s:3:"X4";
        }
    }

我无法找出如何解码这个字符串,因为它似乎无法在页面上显示它的 php 代码中找到对它的引用。在我看来它是 JSON,但我似乎找不到上述的“标准”格式,以便开始弄清楚它从哪里开始和在哪里结束。

我需要使用 ASP.net 进行解码。但话又说回来,我需要弄清楚它是什么,然后才能开始解码它!

对它的任何帮助都会很棒!

4

3 回答 3

2

尝试反序列化: function.unserialize

编辑:如果您可以使用 C# 库: 如何反序列化 PHP 序列化数组/变量/类并在 C# 中返回合适的对象

EDIT2: Visual Studio 提示:在 VB.NET 项目中使用 C# 的三种方法

编辑3:

我需要弄清楚它是什么

在字符串中存储(和恢复)数组和对象(以及其他类型,请参阅手册)是标准的 PHP 解决方案。

于 2012-08-13T20:47:43.960 回答
1

这似乎是 PHP 的序列化方法。你只需要使用 PHPunserialize()就可以了。

于 2012-08-13T20:48:36.273 回答
1

这看起来是一个序列化的对象。PHP的unserialize可能是你想要的:

unserialize()获取单个序列化变量并将其转换回 PHP 值。

没有将其转换为 ASP.Net 对象的内置方法,但它是一种常规格式,因此您可以构建自己的解析器来创建该特定结构的属性的简单字典表示。

但是,如果您尝试在 ASP.Net 中反序列化 PHP 对象,您可能做错了什么!

于 2012-08-13T20:50:53.563 回答