那是一个Serialized 数组,它将数组转换为简单字符串,以便可以将其插入到数据库中(因为不能按原样将数组插入到数据库中)。
有关更多信息,请阅读PHP文档serialize()
还有一些WordPress函数也具有相同的功能:maybe_serialize()
和maybe_unserialize()
.
每当您将数组传递给update_post_meta()
作用要恢复阵列,可以使用get_post_meta()
并将真值传递给$single
.
$single
(布尔)(可选)如果设置为true,则函数将以字符串形式返回单个结果。如果为false或未设置,则该函数返回一个自定义字段数组。在序列化数组的上下文中,这可能不是直观的。
If you fetch a serialized array with this method you want $single to be true to actually get an unserialized array back. 如果传入false或不传入,则将有一个1的数组,索引0处的值将是序列化字符串。
默认值:false
get_option()
还将返回默认情况下可供使用的未序列化数组。
如果我们分解字符串,它看起来像这样:
a:1:{s:12:"jetlocations";a:2:{s:5:"label";s:12:"JetLocations";s:4:"type";s:6:"editor";}}
a:1:{}
= 指定存在计数为1的数组
s:12:
= 数组中唯一的索引是一个长度为12个字符的字符串;jetlocations公司;
a:2:
= 然后,jetlocations保存一个计数为2的数组
s:5:
= 第一个索引是一个长度为5个字符的字符串-“;“标签”;
s:12:
= “的价值”;“标签”;也是一个由12个字符组成的长字符串-“”;JetLocations公司;
s:4:
= 我们的第二个索引是一个由4个字符组成的字符串logn-“”;“类型”;
s:6:
= “的价值”;“类型”;是一个长度为6个字符的字符串-“”;“编辑”;
所以,如果我们把这些放在一起,我们会得到一个如下的数组:
array(
\'jetlocations\' => array(
\'label\' => \'JetLocations\',
\'type\' => \'editor\'
)
);