这个字符串的类型是什么?一个:1:{S:2: “EN”;}

时间:2014-01-25 23:08:53

标签: php mysql json

a:1:{s:2:"en";s:39:"Sample Text";}

我的问题很短暂,你对上述格式有所了解吗?

我想在数组之后存储长网站设置,如JSON。

之类的格式
$settings = array(
            'slug' => 'test',
            'title' => 'John Doe',
            'description' => 'A Yes or No option for the module',
            '`default`' => '1',
            '`value`' => '1',
            'type' => 'select',
            '`options`' => '1=Yes|0=No',
            'is_required' => 1,
            'is_gui' => 1,
            'module' => 'johndoe'
        );

它看起来像JSON,但可能不是。

我对这种格式阅读和创作一无所知。

实际上哪个PHP和MySQL数据类型用于存储具有最佳性能的长参数?

3 个答案:

答案 0 :(得分:2)

您在此处向我们展示的数据类型是PHP中的序列化变量。

要序列化或反序列化它,只需使用以下两种方法:

http://php.net/manual/en/function.serialize.php

http://www.php.net/manual/en/function.unserialize.php

将其存储在MySQL中,取决于序列化数据的大小。提供VARCHAR,TINYTEXT,TEXT,MEDIUMTEXT或BIGTEXT。

答案 1 :(得分:1)

您可以使用TEXTVARCHAR

更好的是这里有一些性能数字。但请注意,我相信他正在使用一些索引他的测试。

http://forums.mysql.com/read.php?24,105964,105964

答案 2 :(得分:1)

看起来它是一个序列化的PHP字符串。

您可以使用任何普通文本字段来存储其数据。您使用哪种字段类型取决于您对数据的期望长度。

如果它只是一个博客文章标题,你可以使用'varchar'。使用'varchar',您只能使用255个字符,如果您需要存储大量文本,那么最好使用“文本”字段。