PHP像.NET中的序列化字符串

时间:2019-04-16 13:35:34

标签: c# .net serialization

我有一个旧版PHP应用程序,该应用程序使用PHP的serialize()方法来序列化该类并将其存储到文件中,还有其他应用程序使用此字符串使用unserialize()方法来创建序列化的对象类并使用关联的数据。我需要在.NET中实现类似的序列化技术,以便输出与PHP相同。我正在考虑为此使用反射,但仍然需要确定我将如何利用它。我也尝试过.NET序列化,但输出完全不同。

还有其他方法可以做到吗?

请考虑以下示例-

示例php类

class SerializeTest
{
    var $test = 0;
    var $test1 = "testing";
    var $test2 = 1;
    var $test3 = "testing1";

    public function __construct()
    {
        echo serialize($this);
    }
}

序列化字符串

O:13:"SerializeTest":4:{s:4:"test";i:0;s:5:"test1";s:7:"testing";s:5:"test2";i:1;s:5:"test3";s:8:"testing1";}

示例.NET类

class SerializeDemo
{
    internal int test = 0;
    internal string test1 = "testing";
    internal int test2 = 1;
    internal string test3 = "testing3";
}

必需的序列化字符串

O:13:"SerializeTest":4:{s:4:"test";i:0;s:5:"test1";s:7:"testing";s:5:"test2";i:1;s:5:"test3";s:8:"testing1";}

1 个答案:

答案 0 :(得分:0)

尝试Sharp Serialization Library

  

Sharp序列化库对原语进行序列化和反序列化,   ArrayList和Hashtables,与PHP serialize()兼容。用它来   无法传递哈希表的SOAP / Web Services通信   否则,或者保存到php可读的文件中。